모바일 오유 바로가기
http://m.todayhumor.co.kr
분류 게시판
베스트
  • 베스트오브베스트
  • 베스트
  • 오늘의베스트
  • 유머
  • 유머자료
  • 유머글
  • 이야기
  • 자유
  • 고민
  • 연애
  • 결혼생활
  • 좋은글
  • 자랑
  • 공포
  • 멘붕
  • 사이다
  • 군대
  • 밀리터리
  • 미스터리
  • 술한잔
  • 오늘있잖아요
  • 투표인증
  • 새해
  • 이슈
  • 시사
  • 시사아카이브
  • 사회면
  • 사건사고
  • 생활
  • 패션
  • 패션착샷
  • 아동패션착샷
  • 뷰티
  • 인테리어
  • DIY
  • 요리
  • 커피&차
  • 육아
  • 법률
  • 동물
  • 지식
  • 취업정보
  • 식물
  • 다이어트
  • 의료
  • 영어
  • 맛집
  • 추천사이트
  • 해외직구
  • 취미
  • 사진
  • 사진강좌
  • 카메라
  • 만화
  • 애니메이션
  • 포니
  • 자전거
  • 자동차
  • 여행
  • 바이크
  • 민물낚시
  • 바다낚시
  • 장난감
  • 그림판
  • 학술
  • 경제
  • 역사
  • 예술
  • 과학
  • 철학
  • 심리학
  • 방송연예
  • 연예
  • 음악
  • 음악찾기
  • 악기
  • 음향기기
  • 영화
  • 다큐멘터리
  • 국내드라마
  • 해외드라마
  • 예능
  • 팟케스트
  • 방송프로그램
  • 무한도전
  • 더지니어스
  • 개그콘서트
  • 런닝맨
  • 나가수
  • 디지털
  • 컴퓨터
  • 프로그래머
  • IT
  • 안티바이러스
  • 애플
  • 안드로이드
  • 스마트폰
  • 윈도우폰
  • 심비안
  • 스포츠
  • 스포츠
  • 축구
  • 야구
  • 농구
  • 바둑
  • 야구팀
  • 삼성
  • 두산
  • NC
  • 넥센
  • 한화
  • SK
  • 기아
  • 롯데
  • LG
  • KT
  • 메이저리그
  • 일본프로야구리그
  • 게임1
  • 플래시게임
  • 게임토론방
  • 엑스박스
  • 플레이스테이션
  • 닌텐도
  • 모바일게임
  • 게임2
  • 던전앤파이터
  • 마비노기
  • 마비노기영웅전
  • 하스스톤
  • 히어로즈오브더스톰
  • gta5
  • 디아블로
  • 디아블로2
  • 피파온라인2
  • 피파온라인3
  • 워크래프트
  • 월드오브워크래프트
  • 밀리언아서
  • 월드오브탱크
  • 블레이드앤소울
  • 검은사막
  • 스타크래프트
  • 스타크래프트2
  • 베틀필드3
  • 마인크래프트
  • 데이즈
  • 문명
  • 서든어택
  • 테라
  • 아이온
  • 심시티5
  • 프리스타일풋볼
  • 스페셜포스
  • 사이퍼즈
  • 도타2
  • 메이플스토리1
  • 메이플스토리2
  • 오버워치
  • 오버워치그룹모집
  • 포켓몬고
  • 파이널판타지14
  • 배틀그라운드
  • 기타
  • 종교
  • 단어장
  • 자료창고
  • 운영
  • 공지사항
  • 오유운영
  • 게시판신청
  • 보류
  • 임시게시판
  • 메르스
  • 세월호
  • 원전사고
  • 2016리오올림픽
  • 2018평창올림픽
  • 코로나19
  • 2020도쿄올림픽
  • 게시판찾기
  • 게시물ID : computer_83431
    작성자 : 몰라서
    추천 : 0
    조회수 : 1322
    IP : 204.102.***.17
    댓글 : 2개
    등록시간 : 2013/04/04 09:59:32
    http://todayhumor.com/?computer_83431 모바일
    Java 은행계좌 프로그램 질문좀요..생명의 은인을 찾습니다ㅠㅠ

    프로그램이 너무 길고 4가지 파일로 나뉘어져 있어서 도와주실 분들 찾기 어려울거라고 알지만

    정말 생명의 은인찾는 심정으로 한번 올려봅니다....ㅠㅠ

    패키지 하나 안에 A2, CheckingAccount, Transaction, TransPanel이라는 .class파일들이 있습니다.

    A2가 메인인데 그안에서 TransPanel을 이용해서 Actionlistener이런것들을 사용한 윈도우창을 하나 띄우고

    1. 거래하기, 2. 모든 거래내역 보기, 3. 모든 출금 거래내역보기, 4. 모든 입금 거래내역보기 중에 선택해서

    사용자로부터 거래하기를 클릭받앗을경우는 1. 입금하기, 2. 출금하기, 0. 끝내기 라고 따로 또 번호를 받습니다.

    이런식으로 윈도우 버튼창은 계속 떠있으니까 계속 입금할수도 있고 출금할수도있고 마지막에 2. 모든거래내역보기 혹은 모든 출금거래내역 보기 등

    을 눌렀을 경우는 모든거래내역, 혹은 딱 출금내역들만 이렇게 출력해내야 하는데

    모든 거래내역을 어떻게 컴퓨터가 기억하고 있게끔해서 출력해 내고, 출금내역들만은 또 어떻게 출력해 내는지 모르겠습니다.

    A2안에서 출력하라고 명령해야 하는것 같고 문제는 지금 CheckingAccount안에 있는것 같습니다.

    for 을 사용해서 CheckingAccount안에 있는 정보들을 이용해야 하는것 같은데 아직도 초보라.. 프로그램들 올려봅니다....

    ----------------------------------------------A2----------------------------------------------

    import java.text.DecimalFormat;
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;


    public class A2
    {
    // global variables:
       public static CheckingAccount CA;  //define a CheckingAccount object to keep track of the account information.
       public static boolean under500 = true;
       public static boolean under50 = true;
       public static boolean under0 = true;
       public static JFrame frame;
      
       public static void main (String[] args)
       {
           double initialBalance;
           String numbal;    // defines local variables
           numbal = JOptionPane.showInputDialog ("Enter the initial balance: ");
           initialBalance = Double.parseDouble(numbal); //  get initial balance from the user
           CA = new CheckingAccount(initialBalance);

             frame = new JFrame ("Checking Account actions");
             frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);

             TransPanel panel = new TransPanel();
             frame.getContentPane().add (panel);

             frame.pack();
             frame.setVisible(true);
       }
      
       public static int getTransCode()
       {
           int transCode;
           String numtrans;
           numtrans = JOptionPane.showInputDialog ("Enter trans code: ");
           transCode = Integer.parseInt(numtrans);
           return transCode;
       }
      
       public static void inputTransCode()
       {
           int transCode;
           double transAmt;
           transCode = getTransCode();
               if (transCode == 1)
               {
                   transAmt = getTransAmt();
                   CA.setBalance(transAmt, transCode);
                   processCheck(transAmt);
               }
               else if (transCode == 2)
               {
                   transAmt = getTransAmt();
                   CA.setBalance(transAmt, transCode);
                   processDeposit(transAmt);
               }
               else if (transCode == 0)
               {
                 if (CA.getBalance() < 0)
                 {
                   double currentbal;
                   String message2;
                   DecimalFormat formatter = new DecimalFormat("#0.00");
                   currentbal = CA.getBalance();
                   currentbal = -1*currentbal;
                   message2 = "Transaction: End\n" + "Current Balance:($" + formatter.format(currentbal) + ")\n" +
                      "Total Service Charge:$" + formatter.format(CA.getServiceCharge()) + "\n" +
                      "Final Balance: ($" + formatter.format((currentbal+CA.getServiceCharge())) + ")\n";
                   JOptionPane.showMessageDialog(null, message2);
                 }
                 else if (CA.getBalance() > 0)
                 {
                   double currentbal;
                   String message2;
                   DecimalFormat formatter = new DecimalFormat("#0.00");
                   currentbal = CA.getBalance();
                   if (currentbal > CA.getServiceCharge())
                   {
                     currentbal = -1*currentbal;
                     message2 = "Transaction: End\n" + "Current Balance: $" + formatter.format(-1*currentbal) + "\n" +
                           "Total Service Charge: $" + formatter.format(CA.getServiceCharge()) + "\n" +
                           "Final Balance: $" + formatter.format(currentbal - CA.getServiceCharge()) + "\n";
                     JOptionPane.showMessageDialog(null, message2);
                   }
                   else if (currentbal < CA.getServiceCharge())
                   {
                     currentbal = -1*currentbal;
                     message2 = "Transaction: End\n" +
                              "Current Balance: $" + formatter.format(currentbal) + "\n" +
                              "Total Service Charge: $" + formatter.format(CA.getServiceCharge()) + "\n" +
                              "Final Balance: ($" + formatter.format(currentbal + CA.getServiceCharge()) + ")\n";
                     JOptionPane.showMessageDialog(null, message2);
                   }
                 }
              System.exit(0);
              }
       }

       public static double getTransAmt()
       {
           double transAmt;
           String numamt;
           numamt = JOptionPane.showInputDialog ("Enter transaction amount: ");
           transAmt = Double.parseDouble(numamt);
           return transAmt;

       }
      
         public static void listTrans()
       { 
          JTextArea text = new JTextArea();
          String message = "";
          int num = CA.gettransCount() - 1;
          text.setOpaque(false);
          text.setFont(new Font("Monospaced", Font.PLAIN, 14) );
          text.setBorder(null);
          message+="List all transactions:\n\n" + "ID       Type        Amount\n";
          for (num = 0; num < CA.gettransCount(); num++)
          { 
             Transaction trans = CA.getTrans(num);
             message += String.format("%3d        %-10s           %3d\n",
                     num, trans.getTransId(), trans.getTransAmount());
          }
          text.setText(message);
          JOptionPane.showMessageDialog(null, text);
        }
        
         public static void listChecks()
       { 
          JTextArea text = new JTextArea();
          String message = "";
          int num = CA.gettransCount() - 1;
          text.setOpaque(false);
          text.setFont(new Font("Monospaced", Font.PLAIN, 14) );
          text.setBorder(null);
          message+="Checks cashed:\n\n" + "ID       Amount\n";
          for (num = 0; num < CA.gettransCount(); num++)
          {
            Transaction trans = CA.getTrans(num);
            if (trans.getTransId() == 1)
            {
                 message += String.format("%3d       %3d\n", num, trans.getTransAmount());
            }
          }
          text.setText(message);
          JOptionPane.showMessageDialog(null, text);
        }

        public static void listDeposits()
       { 
          JTextArea text = new JTextArea();
          String message = "";
          int num = CA.gettransCount() - 1;
          text.setOpaque(false);
          text.setFont(new Font("Monospaced", Font.PLAIN, 14) );
          text.setBorder(null);
          message+="Deposits made:\n\n" + "ID       Amount\n";
          for (num = 0; num < CA.gettransCount(); num++)
          {
            Transaction trans = CA.getTrans(num);
            if (trans.getTransId() == 2)
            {
                 message += String.format("%3d       %3d\n", num, trans.getTransAmount());
            }
          }
          text.setText(message);
          JOptionPane.showMessageDialog(null, text);
        }
        
      
       public static void processCheck(double transAmt)
       {
           String trans = "Check", message1;
           double currentbal;
           currentbal = CA.getBalance();
           DecimalFormat formatter = new DecimalFormat("#0.00");
                   if (currentbal > 0 && currentbal < 500 && under500)
                   {
                       CA.setServiceCharge(5.15);
                       message1 = "Transaction: " + trans + " in amount of $" + formatter.format(transAmt) + "\n" +
                          "Current Balance: $" + formatter.format(currentbal) + "\n" +
                          "Service Charge: " + trans + " --- charge $0.15\n" +
                          "Service Charge: " + "Below $500 --- charge $5.00\n" +
                          "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog (null, message1);
                       under500 = false;
                   }
                   else if (currentbal > 0 && currentbal < 50 && under50)
                   {
                       CA.setServiceCharge(0.15);
                       message1 = "Transaction: " + trans + " in amount of $" + formatter.format(transAmt) + "\n" +
                          "Current Balance: $" + formatter.format(currentbal) + "\n" +
                          "Service Charge: " + trans + " --- charge $0.15\n" +
                          "Warning: Balance below $50\n" +
                          "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog (null, message1);
                       under50 = false;
                   }
                   else if (currentbal < 0 && under0)
                   {
                      CA.setServiceCharge(10.15);
                      currentbal = -(currentbal);
                       message1 = "Transaction: " + trans + " in amount of $" + formatter.format(transAmt) + "\n" +
                          "Current Balance: ($" + formatter.format(currentbal) + ")\n" +
                          "Service Charge: " + trans + " --- charge $0.15\n" +
                          "Warning: Balance below $50\n" +
                          "Service Charge: below $0 --- charge $10.00\n" +
                          "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog (null, message1);
                       under0 = false;
                   }
                   else if (currentbal < 0)
                   {
                       CA.setServiceCharge(0.15);
                       currentbal = -1*currentbal;
                       message1 = "Transaction: " + trans + " in the amount of $" + formatter.format(transAmt) + "\n" +
                                  "Current Balance: ($" + formatter.format(currentbal) + ")\n" +
                                  "Service Charge: " + trans + " --- charge $0.15\n" +
                                  "Warning: Balance below $50\n" +
                                  "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog(null, message1);
                   }
                   else
                   {
                       CA.setServiceCharge(0.15);
                       message1 = "Transaction: " + trans + " in amount of $" + formatter.format(transAmt) + "\n" +
                          "Current Balance: $" + formatter.format(currentbal) + "\n" +
                          "Service Charge: " + trans + " --- charge $0.15\n" +
                          "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog (null, message1);
                   }
    }

       public static void processDeposit(double transAmt)
       {
           String trans = "Deposit", message1;
           double currentbal;
           currentbal = CA.getBalance();
           DecimalFormat formatter = new DecimalFormat("#0.00");
                   if (currentbal > 0 && currentbal < 500 && under500)
                   {
                       CA.setServiceCharge(5.10);
                       message1 = "Transaction: " + trans + " in amount of $" + formatter.format(transAmt) + "\n" +
                          "Current Balance: $" + formatter.format(currentbal) + "\n" +
                          "Service Charge: " + trans + " --- charge $0.10\n" +
                          "Service Charge: " + "Below $500 --- charge $5.00\n" +
                          "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog (null, message1);
                       under500 = false;
                   }
                   else if (currentbal > 0 && currentbal < 50 && under50)
                   {
                       CA.setServiceCharge(0.10);
                       message1 = "Transaction: " + trans + " in amount of $" + formatter.format(transAmt) + "\n" +
                          "Current Balance: $" + formatter.format(currentbal) + "\n" +
                          "Service Charge: " + trans + " --- charge $0.10\n" +
                          "Warning: Balance below $50\n" +
                          "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog (null, message1);
                       under50 = false;
                   }
                   else if (currentbal < 0 && under0)
                   {
                       CA.setServiceCharge(10.10);
                       currentbal = -(currentbal);
                       message1 = "Transaction: " + trans + " in amount of $" + formatter.format(transAmt) + "\n" +
                          "Current Balance: ($" + formatter.format(currentbal) + ")\n" +
                          "Service Charge: " + trans + " --- charge $0.10\n" +
                          "Warning: Balance below $50\n" +
                          "Service Charge: below $0 --- charge $10.00\n" +
                          "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog (null, message1);
                       under0 = false;
                   }
                   else
                   {
                       CA.setServiceCharge(0.10);
                       message1 = "Transaction: " + trans + " in amount of $" + formatter.format(transAmt) + "\n" +
                          "Current Balance: $" + formatter.format(currentbal) + "\n" +
                          "Service Charge: " + trans + " --- charge $0.10\n" +
                          "Total Service Charge: $" + formatter.format(CA.getServiceCharge());
                       JOptionPane.showMessageDialog (null, message1);
                   }
       }
    }

    ---------------------------------------CheckingAccount-----------------------------------------------

    public class CheckingAccount
    {
          private double balance;
          private double totalServiceCharge;
         
        private int transNumber;
        private int transId;
        private double transAmt;

         
          private ArrayList<Transaction> transList;  // keeps a list of Transaction objects for the account
          private int transCount;// the count of Transaction objects and used as the ID for each transaction
       
          public void addTrans(Transaction newTrans)
          {
              transList.add(newTrans);  // adds a transaction object to the transList
          }
      
          public int gettransCount()
          {
              return transCount;  //returns the current value of transCount;
          }
        
          public Transaction getTrans(int i)
          {
              return transList.get(i);  // returns the i-th Transaction object in the list
          }

     
         
         
          public CheckingAccount(double initialBalance)
          {
                balance = initialBalance;
                totalServiceCharge = 0;
          }
     

          public double getBalance()
          {
              return balance;
          }

     
          public void setBalance(double transAmt, int tCode)
          {
                if(tCode == 1)
                {
                    balance = balance - transAmt;
                    //1. Check
                } 
                else//if(tCode == 2)
                {
                    balance = balance + transAmt;
                    //2. Deposit
                }
          }

     
          public double getServiceCharge()
          {
                return totalServiceCharge;
          }
     

          public void setServiceCharge(double currentServiceCharge)
          {
                totalServiceCharge += currentServiceCharge;
                //3. Service charge
          }

    }

    ---------------------------------------------Transaction-----------------------------------------------

    public class Transaction

    {
        private int transNumber;
        private int transId;
        private double transAmt;

        public Transaction(int number, int id, double amount)
        {
            transNumber = number;
            transId = id;
            transAmt = amount;
        }
      

        public int getTransNumber()
        {
            return transNumber;
        }

       
        public int getTransId()
        {
            return transId;
        }

       
        public double getTransAmount()
        {
            return transAmt;
        }
    }
    --------------------------------------------TransPanel----------------------------------------------

    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    public class TransPanel extends JPanel
    {
       
        private JLabel prompt;
        private JRadioButton one, two, three, four;
       
        public TransPanel()
        {       
          prompt = new JLabel ("Choose action:");
          prompt.setFont (new Font ("Helvetica", Font.BOLD, 24));
         
          one = new JRadioButton ("enter transaction");
          one.setBackground (Color.yellow);
          two = new JRadioButton ("list all transactions");
          two.setBackground (Color.yellow);
          three = new JRadioButton ("list all checks");
          three.setBackground (Color.yellow);
          four = new JRadioButton ("list all deposits");
          four.setBackground (Color.yellow);
         
          ButtonGroup group = new ButtonGroup();
          group.add (one);
          group.add (two);
          group.add (three);
          group.add (four);
                 
          TransPanel.TransListener listener = new TransPanel.TransListener();
          one.addActionListener (listener);
          two.addActionListener (listener);
          three.addActionListener (listener);
          four.addActionListener (listener);
         
          add (prompt);
          add (one);
          add (two);
          add (three);
          add (four);
         
          setBackground (Color.yellow);
          setPreferredSize (new Dimension(300, 100));
        }
       
       
         private class TransListener implements ActionListener
       {
          //--------------------------------------------------------------
          //  Calls the method to process the option for which radio
          //  button was pressed.
          //--------------------------------------------------------------
          public void actionPerformed (ActionEvent event)
          {
             Object source = event.getSource();

             if (source == one)
               A2.inputTransCode();

             else if (source == two)
               A2.listTrans();
            
             else if (source == three)
               A2.listChecks();
            
             else if (source == four)
               A2.listDeposits();
           }
       }
    }


    이 게시물을 추천한 분들의 목록입니다.
    푸르딩딩:추천수 3이상 댓글은 배경색이 바뀝니다.
    (단,비공감수가 추천수의 1/3 초과시 해당없음)

    죄송합니다. 댓글 작성은 회원만 가능합니다.

    번호 제 목 이름 날짜 조회 추천
    371772
    아이맥 맥잘알 선생님들께 요청드리어요! (중고 고민) [7] 맛있는햇살 24/11/30 01:59 408 0
    371771
    구형 컴퓨터 업그레이드 조언 부탁드립니다 [4] 방구석폐인 24/11/26 17:53 460 4
    371770
    고수님들의 고견 부탁드립니다.(가정용 조립PC) [9] 본인삭제금지 잡식마우스 24/11/25 10:54 541 3
    371769
    윈도7 아 [5] 시인과촌된장 24/11/24 12:42 664 4
    371767
    책상에서 PC 켜고 끄기 [16] NeoGenius 24/11/22 23:22 810 5
    371766
    옛날 노트북으로 듀얼 모니터 쓰려는데 충격 [8] 맥플러리 24/11/21 17:36 778 3
    371765
    사무용PC를 구매하려고하는데요 리뉴올PC(중고구입) 안좋은가요? [12] 유치원회장乃 24/11/21 16:32 523 2
    371764
    아무리 추워도 파밍을 게을리 하지 마라 [14] 싼타스틱4 24/11/18 02:12 892 7
    371763
    컴이 날라다니네여 [6] 시인과촌된장 24/11/17 18:38 809 3
    371762
    인터넷업무 위주 컴퓨턴데 어떤점이 부족할까요? [20] 차케라 24/11/14 10:11 703 1
    371761
    안녕하세요 선생님들 cpu고민이 되어서 질문드려봅니다 [9] 후라이케촵찹 24/11/10 18:18 699 2
    371760
    데스크탑 알림 프로그램을 찾습니다(도움ㅠㅠ) [8] 본인삭제금지 후천적 24/11/07 18:10 671 1
    371759
    중학교 들어갈 아들이 사용할 컴퓨터입니다. [13] 베스트금지베오베금지본인삭제금지외부펌금지 김차장™ 24/11/07 12:28 964 1
    371758
    LD플레이어로 게임을 하면 화면이 깨져 버립니다 [10] 후천적 24/11/06 14:19 814 1
    371757
    256g sd 카드 말인데 [2] 맥플러리 24/11/05 11:26 888 2
    371756
    노트북 노화로 인해 교체시기가 다가온것 같은데. 고르기가 너무 힘듭니다. [8] 창작글본인삭제금지 단단a 24/11/05 09:32 831 0
    371754
    선생님들) 컴퓨터 비교좀 가능할까요? 셋중에 뭐가 제일 좋을지 추천좀 해 [8] 팬티형 24/10/31 10:25 1076 3
    371752
    좆댓어 [19] 싼타스틱4 24/10/28 00:48 1461 4
    371751
    컴알못이 CPU 업그레이드 질문 드립니다. [7] 대고참 24/10/24 22:12 1015 0
    371750
    파워 가격차이만큼 수명이나 성능차이가 있을까요 [5] vegas999 24/10/23 14:00 1028 2
    371749
    아들 컴터 사주려는데 조언 좀 부탁드립니다 [7] 미춰붜뤼겠눼 24/10/23 10:39 1151 2
    371748
    날이 추워지니까 FAN들이 소리를 내네요 [2] ㅗㅠㅑ 24/10/22 09:01 1011 2
    371747
    노트북 교체시기인가 합니다. 노트북 고르는 것 도와주세요. [10] 본인삭제금지 도시샤 24/10/21 16:56 1109 0
    371746
    고수님들 컴퓨터 견적 질문좀 드립니다. [6] 오후10시47분 24/10/21 06:11 1051 1
    371744
    GTA5 옵션 관련 질문 드립니다. (너무 버벅되요...) [11] 본인삭제금지 MincePie 24/10/19 12:04 1046 1
    371743
    쉬프트키가 안먹혀요 도와주세요 [3] 맥플러리 24/10/19 11:03 1232 3
    371741
    진짜 인터넷때문에 돌아버릴것 같아요 제발 도와주세요 [10] 대고참 24/10/14 19:32 1213 1
    371740
    모니터 6개 입니다. 구성 [2] Lunatic 24/10/14 17:06 1306 4
    371739
    와 스피커 잡음해결 [3] Oh_My!_Girl 24/10/14 00:51 1265 1
    371737
    이런 스피커 잡음은 어떻게 해결해요? [5] 본인삭제금지 Oh_My!_Girl 24/10/13 21:09 1048 1
    [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [다음10개▶]
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈