<div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">1. fdsa란 패키지 안에 game.java파일과 Messenger.java파일이 있습니다. Messenger의 MyFrame 클래스에서 버튼을 눌렀을 때 game.java가 실행되려면 어떻게 해야하나요?</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">2. 프로그램을 실행할 때 이름을 입력하는 JOptionPane 창이 나오고 process 클래스와 actionPerformed 클래스에서 Myname과 Yourname 변수를 만들어서 채팅을 전송할 때 서로의 이름도 전송시키고 싶은데 어떻게 하나요? 예를 들어</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">이름을 입력하세요: 철수</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">철수:ㅎㅇ</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">영희:안녕</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">packet를 하나 추가해서 packet1엔 내용, packet2엔 이름 이런식으로 보내면 되나요?</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">아래는 소스입니다.</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"> <div style="margin:0px;padding:0px;">import java.io.*;</div> <div style="margin:0px;padding:0px;">import java.net.*;</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">import java.awt.*;</div> <div style="margin:0px;padding:0px;">import java.awt.event.*;</div> <div style="margin:0px;padding:0px;">import javax.swing.*;</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">import java.awt.BorderLayout;</div> <div style="margin:0px;padding:0px;">import java.awt.event.ActionEvent;</div> <div style="margin:0px;padding:0px;">import java.awt.event.ActionListener;</div> <div style="margin:0px;padding:0px;">import javax.swing.JButton;</div> <div style="margin:0px;padding:0px;">import javax.swing.JFrame;</div> <div style="margin:0px;padding:0px;">import javax.swing.JPanel;</div> <div style="margin:0px;padding:0px;">import javax.swing.JScrollPane;</div> <div style="margin:0px;padding:0px;">import javax.swing.JTextArea;</div> <div style="margin:0px;padding:0px;">import javax.swing.JTextField;</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">public class MessengerA {</div> <div style="margin:0px;padding:0px;"> protected JTextField textField;</div> <div style="margin:0px;padding:0px;"> protected JTextArea textArea;</div> <div style="margin:0px;padding:0px;"> DatagramSocket socket;</div> <div style="margin:0px;padding:0px;"> DatagramPacket packet;</div> <div style="margin:0px;padding:0px;"> InetAddress address = null;</div> <div style="margin:0px;padding:0px;"> final int myPort = 5000;</div> <div style="margin:0px;padding:0px;"> final int otherPort = 6000;</div> <div style="margin:0px;padding:0px;"> protected String Myname="";</div> <div style="margin:0px;padding:0px;"> protected String Yourname="";</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;"> public MessengerA() throws IOException {</div> <div style="margin:0px;padding:0px;"> MyFrame f = new MyFrame();</div> <div style="margin:0px;padding:0px;"> address = InetAddress.getByName("127.1.0.150");</div> <div style="margin:0px;padding:0px;"> socket = new DatagramSocket(myPort);</div> <div style="margin:0px;padding:0px;"> }</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">public void process() {</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;"> while(true) {</div> <div style="margin:0px;padding:0px;"> try</div> <div style="margin:0px;padding:0px;"> {</div> <div style="margin:0px;padding:0px;"> byte[] buf=new byte[256];</div> <div style="margin:0px;padding:0px;"> packet = new DatagramPacket(buf, buf.length);</div> <div style="margin:0px;padding:0px;"> socket.receive(packet);</div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;"> textArea.append(Yourname+": "+ new String(buf)+"\n");</div> <div style="margin:0px;padding:0px;"> }</div> <div style="margin:0px;padding:0px;"> catch (IOException ioException) {</div> <div style="margin:0px;padding:0px;"> ioException.printStackTrace();</div> <div style="margin:0px;padding:0px;"> }</div> <div style="margin:0px;padding:0px;"> }</div> <div style="margin:0px;padding:0px;">}</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">class MyFrame extends JFrame implements ActionListener {</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;white-space:pre;"></span></div> <div style="margin:0px;padding:0px;"> public MyFrame() {</div> <div style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;white-space:pre;"></span> </div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;"> super("MessengerA");</div> <div style="margin:0px;padding:0px;"> setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);</div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;"> textField = new JTextField(20);</div> <div style="margin:0px;padding:0px;"> textField.addActionListener(this);</div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;"> textArea=new JTextArea(30,10);</div> <div style="margin:0px;padding:0px;"> JScrollPane s = new JScrollPane(textArea);</div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;"> JButton b = new JButton("게임 시작");</div> <div style="margin:0px;padding:0px;"> b.setRolloverEnabled(true);</div> <div style="margin:0px;padding:0px;"> b.addActionListener(new GameStart());</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;"> <span style="margin:0px;padding:0px;color:#252525;font-family:'돋움';font-size:13.3333px;">Myname = JOptionPane.showInputDialog("이릅을 입력하세요");</span></div> <div style="margin:0px;padding:0px;"><font color="#252525" face="돋움" style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;font-size:13.3333px;"><br style="margin:0px;padding:0px;"></span></font> <div class="autosourcing-stub-extra" style="margin:0px;padding:0px;line-height:1.5;color:#252525;font-family:'돋움';font-size:13.3333px;"> <p style="margin:11px 0px 7px;padding:0px;line-height:1.5;font-size:12px;font-family:Dotum;"><br style="margin:0px;padding:0px;"></p></div></div> <div style="margin:0px;padding:0px;"> textArea.setEditable(false);</div> <div style="margin:0px;padding:0px;"> add(textField, BorderLayout.PAGE_END);</div> <div style="margin:0px;padding:0px;"> add(s, BorderLayout.CENTER);</div> <div style="margin:0px;padding:0px;"> add(b,BorderLayout.PAGE_START);</div> <div style="margin:0px;padding:0px;"> pack();</div> <div style="margin:0px;padding:0px;"> setSize(300,400);</div> <div style="margin:0px;padding:0px;"> setVisible(true);</div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;"> }</div> <div style="margin:0px;padding:0px;"> public void actionPerformed(ActionEvent evt) {</div> <div style="margin:0px;padding:0px;"> String s =textField.getText();</div> <div style="margin:0px;padding:0px;"> byte[] buffer = s.getBytes();</div> <div style="margin:0px;padding:0px;"> DatagramPacket packet;</div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;"> packet = new DatagramPacket(buffer, buffer.length,address,otherPort);</div> <div style="margin:0px;padding:0px;"> try {</div> <div style="margin:0px;padding:0px;"> socket.send(packet);</div> <div style="margin:0px;padding:0px;"> } catch (IOException e ) {</div> <div style="margin:0px;padding:0px;"> e.printStackTrace();</div> <div style="margin:0px;padding:0px;"> }</div> <div style="margin:0px;padding:0px;"> textArea.append(Myname+": "+s+"\n");</div> <div style="margin:0px;padding:0px;"> textField.selectAll();</div> <div style="margin:0px;padding:0px;"> textArea.setCaretPosition(textArea.getDocument().getLength());</div> <div style="margin:0px;padding:0px;"> }</div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;"> class GameStart implements ActionListener {</div> <div style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;white-space:pre;"></span> public void actionPerformed(ActionEvent e) {</div> <div style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;white-space:pre;"></span> JButton b = (JButton) e.getSource();</div> <div style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;white-space:pre;"></span> b.setText("게임이 시작되었습니다!");</div> <div style="margin:0px;padding:0px;"><span style="margin:0px;padding:0px;white-space:pre;"></span> }</div> <div style="margin:0px;padding:0px;"> }</div> <div style="margin:0px;padding:0px;">}</div> <div style="margin:0px;padding:0px;">public static void main(String[] args) throws IOException{</div> <div style="margin:0px;padding:0px;"> MessengerA m = new MessengerA();</div> <div style="margin:0px;padding:0px;"> m.process();</div> <div style="margin:0px;padding:0px;"> </div> <div style="margin:0px;padding:0px;">}</div> <div style="margin:0px;padding:0px;">}</div></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.