Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java GUI类和逻辑类之间的交互?_Java_Swing - Fatal编程技术网

Java GUI类和逻辑类之间的交互?

Java GUI类和逻辑类之间的交互?,java,swing,Java,Swing,在Java课程中,我必须创建一个与用户交互的GUI类和一个处理交互的逻辑类。因为我觉得这很复杂,很难理解,所以我正在寻找一些能激励我继续的帮助 到目前为止,我只是使用了一个基于文本的菜单类和一个Swich语句来处理Scanner的简单输入,然后处理所有get和set方法。但我想我不再需要它了,而是可以创建一些逻辑类来处理对象中的所有get和set方法,具体取决于用户的输入。但首先,我如何在窗口中创建一个简单的菜单,并从GUI类获取该逻辑类及其方法的输入值 我添加了一个简单的GUI测试类,我已经完

在Java课程中,我必须创建一个与用户交互的GUI类和一个处理交互的逻辑类。因为我觉得这很复杂,很难理解,所以我正在寻找一些能激励我继续的帮助

到目前为止,我只是使用了一个基于文本的菜单类和一个Swich语句来处理Scanner的简单输入,然后处理所有get和set方法。但我想我不再需要它了,而是可以创建一些逻辑类来处理对象中的所有get和set方法,具体取决于用户的输入。但首先,我如何在窗口中创建一个简单的菜单,并从GUI类获取该逻辑类及其方法的输入值

我添加了一个简单的GUI测试类,我已经完成了这个任务,但是我担心缺少什么

import javax.swing.*;
import java.awt.*;

class Guitest extends JFrame {

JTextField inputLine;
JLabel text;
Container contentPane;

// constructor
public Guitest() {

    contentPane = getContentPane();
    contentPane.setBackground(Color.WHITE);

    setTitle("Test GUI");
    setSize(400,200);
    setLocation(400,400);

    contentPane.setLayout(new FlowLayout(FlowLayout.LEFT));

    text = new JLabel("Enter name of new customer");
    contentPane.add(text);

    inputLine = new JTextField();
    inputLine.setColumns(10);
    contentPane.add(inputLine);

    setDefaultCloseOperation( EXIT_ON_CLOSE );

}
}
我还添加了一个简单的类,可以创建窗口的实例并使其可见。也许这个类可以是逻辑类

 class Showgui {
// main
public static void main(String[] args) {

    Guitest mywindow;
    mywindow = new Guitest();
    mywindow.setVisible(true);
}
}
所有的帮助都是宝贵的!谢谢

您应该先学习,然后了解,如图所示。

您可以在JTextField中添加一个,这样每当用户按下enter键时,就会触发一个事件并执行一段代码

例如:

inputLine.addActionListener(new ActionListener() {

            public void actionPerformed(ActionEvent e) {
                String input = inputLine.getText();
            }

});

谢谢通过输入,我可以将其传递给logic类中的方法?