首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何通过JComboBox选择打开另一个JFrame?

通过JComboBox选择打开另一个JFrame可以通过以下步骤实现:

  1. 创建一个JFrame对象,作为主窗口。
  2. 在主窗口中创建一个JComboBox对象,并添加需要选择的选项。
  3. 为JComboBox添加一个ActionListener监听器,监听选择事件。
  4. 在监听器中,根据选择的选项,创建一个新的JFrame对象,并设置其可见性为true,即打开新窗口。
  5. 在新窗口中添加需要的组件和功能。

以下是一个示例代码:

代码语言:txt
复制
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class MainFrame extends JFrame {
    private JComboBox<String> comboBox;

    public MainFrame() {
        // 设置主窗口的属性
        setTitle("主窗口");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(300, 200);
        setLocationRelativeTo(null);

        // 创建一个JComboBox对象,并添加选项
        comboBox = new JComboBox<>();
        comboBox.addItem("选项1");
        comboBox.addItem("选项2");
        comboBox.addItem("选项3");

        // 添加选择事件的监听器
        comboBox.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // 获取选择的选项
                String selectedOption = (String) comboBox.getSelectedItem();

                // 根据选择的选项创建新的JFrame对象
                if (selectedOption.equals("选项1")) {
                    JFrame newFrame = new JFrame("新窗口1");
                    newFrame.setSize(200, 150);
                    newFrame.setLocationRelativeTo(null);
                    newFrame.setVisible(true);
                } else if (selectedOption.equals("选项2")) {
                    JFrame newFrame = new JFrame("新窗口2");
                    newFrame.setSize(200, 150);
                    newFrame.setLocationRelativeTo(null);
                    newFrame.setVisible(true);
                } else if (selectedOption.equals("选项3")) {
                    JFrame newFrame = new JFrame("新窗口3");
                    newFrame.setSize(200, 150);
                    newFrame.setLocationRelativeTo(null);
                    newFrame.setVisible(true);
                }
            }
        });

        // 将JComboBox添加到主窗口中
        getContentPane().add(comboBox);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                MainFrame mainFrame = new MainFrame();
                mainFrame.setVisible(true);
            }
        });
    }
}

这个示例代码演示了如何通过JComboBox选择打开不同的JFrame窗口。根据选择的选项,创建一个新的JFrame对象,并设置其可见性为true,即可打开新窗口。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Java-GUI 编程之 JList、JComboBox实现列表框

的列表框需要 以下拉方式显示出来; JList 和 JComboBox 都可以通过调用 setRendererO方法来改变列表项的表现形式 。...addListSelectionListener完成,JComboBox通过addItemListener完成 案例: ​ 使用JList和JComboBox完成下图效果: 演示代码: import...ComboBoxModel 继承了 ListModel ,它添加了"选择项"的概念,选择项代表 JComboBox 显示区域内可见的列表项 。...{ new ListModelTest().init(); } } 强制存储列表项的DefaultListModel和DefaultComboBoxModel 前面只是介绍了如何创建...因为 DefaultListModel 作为 JList 的 Model,它负责维护 JList 组件的所有列表数据,所以可以通过向 DefaultListModel 中添加、删除元素来实现向 JList

3.4K11
  • 基于Swing的FontChooser对话框

    功能分析 既然是字体选择器,那么至少得能够选择“字体”,“样式”,“大小”。 这类的对话框一般得是“阻塞“的,即弹出该对话框后,本来的对话框应该是点不动的直到弹出的对话框结束。...仿照JFileChooser和JColorChooser,这类选择工具类的对话框设计为静态的比较好。 对话框默认的字体一般是待修改的字体。 选择成功得返回选择后的结果,选择退出得返回原先的结果。...; import javax.swing.JDialog; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel...static JLabel text; private static JButton button; // 向外部提供的静态方法,可阻塞 public static void showDialog(JFrame...>(); comboBoxStyle = new JComboBox(); comboBoxSize = new JComboBox(); panel = new

    54120

    JavaSwing_8.1:焦点事件及其监听器 - FocusEvent、FocusListener

    永久焦点改变事件发生时焦点直接移动从一个组件到另一个,例如通过到requestFocus的(呼叫)或作为用户使用TAB键遍历组件。...当暂时丢失焦点的组件的另一个操作,比如释放Window或拖动滚动条的间接结果一时焦点变化的事件发生。...3 如何编写焦点侦听器 每当组件获得或失去键盘焦点时,就会触发焦点事件。无论是通过鼠标,键盘还是以编程方式发生焦点变化,都是如此。...要熟悉基本焦点概念或获取有关焦点的详细信息,请参阅如何使用焦点子系统。 本节说明如何通过在特定组件上注册FocusListener实例来获取焦点事件。...请注意,当焦点从一个组件更改为另一个组件时,第一个组件将触发焦点丢失事件,第二个组件将触发焦点获得事件。 从组合框的菜单中选择一个选项。再次单击组合框。请注意,没有报告焦点事件。

    4.7K10
    领券