如何在我的GUI操作类之间建立链接?

时间:2014-05-02 02:28:04

标签: java swing

我有一个包含main方法的类UDPServer,我在一个新类中通过窗口构建器构建了一个GUI,该类扩展了JFrame和我在同一个包中的所有类

我想知道如何将此代码映射到我的GUI和我的actionPerformed方法?

public static void main (String [] args) throws IOException, SocketException 
{   
    final int port = 55555;     // Add server port number.
    DatagramSocket sock  = new DatagramSocket (port); 
    while (true) 
    {
        UDPServer server = new UDPServer (sock);
        server.getRequest ();
        server.useRequest ();
        server.makeResponse();
        server.sendResponse ();
    }
} // End of main    

因为我有一个文本字段让服务器收听将要输入的内容以及一个使服务器监听的按钮以及类似这样的事情来执行类似于远程桌面的聊天应用程序。

1 个答案:

答案 0 :(得分:2)

链接非GUI"模型"代码与您的GUI"查看"代码,

  • 您首先要创建符合OOP的对象,包括非静态变量,构造函数,方法(包括getter,setter等)。您发布的代码只是最基本的静态main方法,并且是因此,几乎无法与GUI简单地集成。
  • 您的控制代码(包括您的事件侦听器)将调用模型代码以使其执行非GUI操作,在您的情况下,ActionListeners(控件)将询问模型(I / O类)通过套接字发送信息。
  • 模型,这里是您的通信代码,然后通知控件或视图(取决于您的程序设置),状态的任何变化 - 这将包括收到的数据包的通知。
  • 然后视图(您的GUI)可以提取此信息并显示它。
  • 您必须注意确保在后台线程上调用长时间运行的代码,例如SwingWorker提供的代码。
  • 您必须注意在Swing事件线程上进行所有更改Swing组件状态的调用。
  • 您需要Google,然后学习有关MVC设计的文章,然后将其原则或其中一个变体纳入您的计划中。