亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

Java中對話框與主窗口的數據交互

小樊
86
2024-08-30 07:15:13
欄目: 編程語言

在Java中,實現對話框與主窗口的數據交互通常需要使用Swing庫。以下是一個簡單的示例,展示了如何在主窗口和對話框之間傳遞數據:

  1. 首先,導入所需的庫:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
  1. 創建一個主窗口類(MainWindow),繼承自JFrame:
public class MainWindow extends JFrame {
    private JTextField textField;
    private JButton openDialogButton;

    public MainWindow() {
        initUI();
    }

    private void initUI() {
        setLayout(new FlowLayout());
        setSize(300, 200);
        setTitle("主窗口");

        textField = new JTextField(20);
        add(textField);

        openDialogButton = new JButton("打開對話框");
        openDialogButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                openDialog();
            }
        });
        add(openDialogButton);
    }

    private void openDialog() {
        DialogWindow dialog = new DialogWindow(this);
        dialog.setVisible(true);
    }

    public void setTextFieldText(String text) {
        textField.setText(text);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                MainWindow mainWindow = new MainWindow();
                mainWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                mainWindow.setVisible(true);
            }
        });
    }
}
  1. 創建一個對話框類(DialogWindow),繼承自JDialog:
public class DialogWindow extends JDialog {
    private JTextField textField;
    private JButton setTextButton;
    private MainWindow mainWindow;

    public DialogWindow(MainWindow mainWindow) {
        super(mainWindow, "對話框", true);
        this.mainWindow = mainWindow;
        initUI();
    }

    private void initUI() {
        setLayout(new FlowLayout());
        setSize(200, 150);

        textField = new JTextField(20);
        add(textField);

        setTextButton = new JButton("設置文本");
        setTextButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                setTextFieldInMainWindow();
            }
        });
        add(setTextButton);
    }

    private void setTextFieldInMainWindow() {
        String text = textField.getText();
        mainWindow.setTextFieldText(text);
        dispose();
    }
}

在這個示例中,我們創建了一個主窗口(MainWindow)和一個對話框(DialogWindow)。主窗口包含一個文本字段和一個按鈕,用于打開對話框。對話框包含一個文本字段和一個按鈕,用于將文本字段的內容設置到主窗口的文本字段中。

當用戶點擊主窗口中的“打開對話框”按鈕時,會創建并顯示一個對話框實例。在對話框中輸入文本并點擊“設置文本”按鈕后,對話框會將輸入的文本設置到主窗口的文本字段中。

0
镇远县| 广元市| 辉县市| 松原市| 寿阳县| 和龙市| 宁城县| 潮安县| 临海市| 仁怀市| 周口市| 彩票| 浦城县| 东辽县| 璧山县| 象山县| 屏山县| 加查县| 文化| 元氏县| 饶平县| 十堰市| 宜春市| 从化市| 莆田市| 安乡县| 甘南县| 安平县| 城市| 白玉县| 织金县| 凌云县| 德化县| 临猗县| 大姚县| 菏泽市| 榆中县| 基隆市| 桐柏县| 怀来县| 灵川县|