单击按钮时 JFrame 未打开

2024-03-17

我有两个JFrame.

  1. public class Main extends JFrame
  2. public class ColourOption extends JPanel implements ActionListener然后将其设置在 JFrame 中。

当我单击第一个 JFrame 的按钮时,我想打开第二个 JFrame
.setVisible()不管用。我也尝试过revalidate(), 也invalidate() , validate()在第二个 JFrame 中。

它不起作用的原因可能是什么?


您必须实例化具有第二个框架(要显示)的第二个类..然后如果您调用 setVisible(true) ..那么它必须显示..您在做什么..您可以提供按钮的事件处理程序吗..

这不是一个好的做法

所以我个人建议您改用更好的替代方案,例如 JTABBEDPANES 或 CARDLAYOUT

并考虑评论..好的评论伙计们:)..特别是在这种情况下使用JDialog:)

好吧,如果您仍然需要在您的上下文中获得帮助:示例:

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class JFrame1 extends JFrame
{
    public JFrame1()
    {
        setLayout(new FlowLayout());
        JButton b=new JButton("Click");
        add(b);
        b.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent ae)
            {
                JFrame jf = new JFrame2();
                jf.setVisible(true);
                jf.setSize(200, 200);
                jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            }
        }
        );
}
    public static void main(String args[])
    {
        JFrame jf = new JFrame1();
        jf.setVisible(true);
        jf.setSize(200, 200);
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

第二类:

import javax.swing.*;
import java.awt.*;
class JFrame2 extends JFrame
{
    public JFrame2()
    {
        setLayout(new FlowLayout());
        add(new JLabel("2nd Frame"));
    }
}    

但我仍然建议切换到我之前提到的其他方法:选项卡窗格、卡片布局等。 希望我有帮助:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

单击按钮时 JFrame 未打开 的相关文章

随机推荐

  • Three.js - 如何反序列化geometry.toJSON()? (geometry.fromJSON 在哪里?)

    我正在尝试卸载一些Geometry加载并处理到网络工作者中 要将其发送回主线程 Geometry实例需要序列化 看起来Geometry prototype toJSON 正是针对这种类型的事情 但我不知道如何将该对象转回Geometry主线
  • PHP 中比较 IP 地址与通配符的优化方法?

    任何人都知道一种有效且安全的方法来查看此输入是否 SERVER REMOTE ADDR 与类似于此不一致过滤器数组的内容匹配 请注意 200 100 可以仅表示为 200 100 并使用 表示的通配符 array 192 168 1 192
  • JavaFX:创建垂直菜单功能区

    我在这里试图完成的一个示例是 当您打开 Office Word 2013 文件并单击文件时 它会在左侧显示一个列表 Info New Open 有没有JavaFX成分像那样 我正在寻找一种 某物 列表 其项目垂直对齐 您可以单击执行某些操作
  • 自托管代理上的 Azure DevOps Python Pipeline Agent.ToolsDirectory 错误

    我有一个安装了 Python3 8 的自托管代理 我可以访问代理并运行 python 包的管道 我收到 Agent ToolsDirectory 与正确版本不匹配的错误 这是它输出的日志 Task 使用Python版本不会使用安装在托管代理
  • java.util.Date 与 java.sql.Date

    java util Date vs java sql Date 什么时候使用哪个以及为什么 恭喜 您已经解决了 JDBC 中我最讨厌的问题 日期类处理 基本上数据库通常至少支持three日期时间字段的形式 包括日期 时间和时间戳 其中每一个
  • 如何避免SQL中的“除以零”错误?

    我有这个错误消息 消息 8134 级别 16 状态 1 第 1 行 遇到除以零错误 编写 SQL 代码的最佳方式是什么 这样我就再也不会看到此错误消息了 我可以执行以下任一操作 添加一个 where 子句 使我的除数永远不为零 Or 我可以
  • Struts 1.3 中的多个提交按钮

    我的 JSP 中有以下代码
  • 在 Objective C 中使用 sizeof 等价物

    如何找到结构体的大小 sizeof 的使用在 Objective C 中不起作用 sizeof确实适用于struct在 Objective C 中 例如 size t pointsize sizeof NSPoint 另一方面 如果您对 O
  • Swiftui 中的 AsyncImage 不显示图像

    我在 TabView 中有 AsyncImage 当我这样做时 图像永远不会出现 我只看到进度条 available iOS 15 0 struct TEST View var body some View VStack TabView A
  • 为什么这个不同的“addSubView”代码会导致行为差异

    为什么将以下代码从旧条目更改为新条目可以修复以下问题 Code OLD Entry Did not work self window addSubview navigationController view NEW Entry Fixed
  • abs() 的错误操作数类型:“list”

    在计算数组每个值的绝对值时 我收到与 abs list 的错误操作数类型相关的错误 源代码失败的部分是下一个 x amplitudex sin 2 pi frequency 1 t phase y amplitudey sin 2 pi f
  • Oracle 基于函数的索引

    也许是一个愚蠢的问题 但是使用基于函数的索引是否安全 我的意思是 当列更改时索引会立即更改吗 假设它们设置正确 是的 概述 Oracle 在带有基于函数的索引的表上创建一个隐藏列 每次更改基于函数的索引的列时都会更新该隐藏列 假设这些值是确
  • Android 上的 Xamarin 表单选取器更改取消文本

    Android 上的 Xamarin Forms 单击选择器将打开对话框 否定按钮的默认文本为 取消 我怎样才能改变它 我查看了 Xamarin 的开源项目 他们设置了这样的肯定按钮文本 builder SetNegativeButton
  • C# 将程序添加到Windows启动(Windows 7)

    我试图通过将程序执行路径添加到注册表编辑器来将我的程序添加到 Windows 启动程序中 这是代码 RegistryKey registryKey Registry CurrentUser OpenSubKey SOFTWARE Micro
  • Android Webview 在三星和 Android 11 上崩溃

    这是我们在 Firebase 上看到的堆栈跟踪 Fatal Exception java lang RuntimeException Using WebView from more than one process at once with
  • Javascript Package 关键字的用途是什么?

    我正在阅读一些有关 JavaScript 保留关键字的在线材料 并且偶然发现了这个词package 我找不到任何清晰的在线材料可以解释它的用途 它是保留的 但不一定使用 好吧 至少在撰写本文时不是 以下内容被 ECMAScript 规范保留
  • Jsonpath 与 Jackson 或 Gson

    我收到一个大的 json 文档 我只想将其中的一部分解析到我的 java 类中 我正在考虑使用像 jsonpath 这样的东西从中提取部分数据 而不是创建 java 类的整个层次结构 Jackson 或 Gson 是否以任何方式支持 jso
  • 按值对 Tcl 字典排序

    我想知道 Tcl 中是否有一种按值对 dict 进行排序的优雅方法 假设我有以下字典 set d1 dict create k1 10 k2 89 k3 1 k4 15 k5 20 Results in dict of form k1 gt
  • 对无响应的 Flask 路由的调用设置超时(已更新)

    我目前在 Flask 应用程序中有一条路线 可以从外部服务器提取数据 然后将结果推送到前端 外部服务器偶尔会缓慢或无响应 在路由调用上设置超时的最佳方法是什么 以便在外部服务器滞后时前端不会挂起 或者在 Flask 中是否有更合适的方法来处
  • 单击按钮时 JFrame 未打开

    我有两个JFrame public class Main extends JFrame public class ColourOption extends JPanel implements ActionListener然后将其设置在 JF