Java GUI按钮,对话框窗口和输入

时间:2016-11-14 00:57:13

标签: java swing user-interface awt

我正在尝试制作一种电话簿,而我在Java GUI中的技能也很生疏,因为我多年没有制作过。所以我们现在假设我的窗口上有一个按钮。当我点击它时,我希望它弹出一个对话框窗口,其中有三个部分用于输入文本(名字,姓氏和电话号码),然后当用户点击底部的确定按钮时,它会将这些添加到列表中名字和语音。我需要什么代码才能使按钮执行此操作?我已经知道如何制作按钮所以我主要想知道它执行的动作以及如何制作我需要的对话窗口。

2 个答案:

答案 0 :(得分:1)

  

以及如何制作我需要的对话窗口。

您制作JDialog窗口的方式与制作JFrame窗口的方式相同,可以这样思考:

JPanel panel = new JPanel();
panel.add( someComponent );
panel.add( anotherComponent );
JDialog dialgo = new JDialog();
dialog.add(panel);
dialog.pack();
dialog.setVisible( true );

通常,此代码将包含在单独的类中,您只需在ActionListener中创建该类的实例。

答案 1 :(得分:0)

好的例子你的按钮叫做button1。您必须向该按钮添加一个ActionListner和一个ActionPerformed(这将包含单击该按钮时发生的情况。)单击该按钮时,您可以创建一个新的面板添加文本框'在面板中。然后你可以添加另一个按钮来继续,它将使其ActionListner / ActionPerfromed二重奏将存储在文本框中的字符串存储到一个已定义的字符串中。示例代码如下:

button1.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent a) {
        JPanel panel1 = new JPanel();
        JTextField textbox = new JTextField(50);
        JTextField textbox1 = new JTextField(50);
        JTextField textbox3 = new JTextField(50);

        label.setText("Please enter Something below on the textbox: ");
        panel1.add(label);
        panel1.add(textbox);
        panel1.add(textbox1);
        panel1.add(textbox2);

        JButton button3 = new JButton();
        button3.setText("CLICK TO PROCEED");
        panel1.add(button3, BorderLayout.NORTH);

        frame.setContentPane(panel1);
        frame.invalidate();
        frame.validate();   

        button3.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent ae){
            String s1 = textbox.getText();
            String s2 = textbox1.getText();
            String s3 = textbox2.getText();}}

希望这会有所帮助。但是,请注意,actionPerformed下定义的变量是本地的。 s1,s2,s3不能在外面使用。最好在ActionListner / ActionPerformed方法之外创建私有静态变量。