将 JPanel 与 Eclipse 的 WindowBuilder 重叠

2023-12-06

我正在使用 WindowBuilder Pro 进行 eclipse,并且我希望有两个彼此完美重叠的 Jpanels。然后我就可以根据组合框的选择来切换它们的可见性。当我尝试在 GUI 构建器中实现此目标时,第一个面板被第二个面板取代。请给建议?


可以使用groupLayout,根据tutorial .

您必须做的是将组件添加到母体中JPanel,并将该面板设置为使用GroupLayout.

然后将组件添加到布局中ParallelGroup在水平和垂直间距上。这意味着它们将占据相同的 X 和 Y 空间。然后根据需要禁用/启用,同时隐藏 JPanel。

我相信它的工作方式是这样的:

        JPanel panel1, panel2, panel3;
        //initialize panel3, etc
        panel1=new JPanel();
        panel2 = new JPanel();
        panel1.add(new JTextField("Panel1"));
        panel2.add(new JTextField("PANEL2"));
        
        groupLayout = new GroupLayout(panel3);
        
        panel3.setLayout(groupLayout);
        
        groupLayout.setHorizontalGroup(
        groupLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
            .addComponent(panel1)
            .addComponent(panel2)
        );
        groupLayout.setVerticalGroup(
            groupLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
            .addComponent(panel1)
            .addComponent(panel2)
        );
        panel1.setEnabled(false);
        panel1.setVisible(false);

然后添加一个带有ActionPerformed方法包含:

if(panel1.isEnabled()) {
    panel1.setEnabled(false);
    panel1.setVisible(false);
    panel2.setEnabled(true);
    panel2.setVisible(true);
    
}else
 if(panel2.isEnabled()) {
    panel2.setEnabled(false);
    panel2.setVisible(false);
    panel1.setEnabled(true);
    panel1.setVisible(true);
    
}

这产生了我想要的行为。您应该能够切换JComboBox为了JCheckBox相当容易。

编辑:删除了拥有“自己的 Jpanel”的必要性。事实并非如此,上面的方法可以让你同时获得 GroupLayout 和 CardLayout 的好处。

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

将 JPanel 与 Eclipse 的 WindowBuilder 重叠 的相关文章

随机推荐

  • 如何禁用客户端 GRPC 服务器证书主机名验证?

    目前我正在为 gRPC 客户端设置通道身份验证 如下所示 std shared ptr
  • 在matlab中设置对象数组的对象属性值

    我创建了一个对象数组 我想在向量运算中分配一个属性值 而不使用 for 循环 不幸的是我得到一个错误 问题的简化示例 classdef clsMyClass lt handle properties dblMyProperty1 end m
  • 将四位数年份值转换为 Date 类

    我的数据集中有一个整数列 其中有四位数字的年份值 例如 c 2001 2002 2002 2002 2003 2005 我尝试将四位数年份转换为班级Date using as Date year lt as Date as characte
  • PHP 中是否有 shell_exec 和 proc_open 的替代方案?

    我好像不能用shell exec or proc open在我的共享服务器上 当我尝试使用它时收到的消息是 警告 出于安全原因 第 4 行 home georgee public html admin email php 中的 shell
  • Tkinter 文档与 PEP 8 相矛盾

    PEP 8 states 应避免通配符导入 来自 import 因为它们使命名空间中存在哪些名称变得不清楚 从而使读者和许多自动化工具感到困惑 尽管如此官方文档是矛盾的 要使用 Tkinter 您只需要一个简单的导入语句 import tk
  • 整个应用程序的通用页脚 [Android]

    好吧 我想知道这是否可以做到 我所需要的只是一个常见的页脚 如栏 其中将包含将要显示的广告 我想知道是否有任何方法可以使我的应用程序的这一部分成为通用的 我知道包含标签 但所做的只是在引用它的任何地方添加特定的布局 这样做的作用是 每次我从
  • 来自 x509 中字符缓冲区的 EVP_PKEY (PKCS7)

    我有一个 DER 证书 我正在从中检索 unsigned char 缓冲区中的公钥 如下所示 这是正确的获取方式吗 pStoredPublicKey X509 get pubkey x509 if pStoredPublicKey NULL
  • 32 位浮点数相加。

    关于浮点数 我学到的东西比我想知道的还要多 可以说我需要添加 1 10000000 00000000000000000000000 1 01111000 11111000000000000000000 2的补码形式 第一位是符号 接下来的
  • 以问号开头的 HTML 标签?

    我正在学习谷歌应用程序脚本 并且在this教程中 我看到了一些奇怪的语法 and h1 Messages h1 ul ul
  • HERE Map/MapView 不使用 MapFragment

    有没有办法获得Map or MapView没有放置一个MapFragmet里面一个Layout
  • .NET 垃圾收集在这里无法正常工作?

    我们有一个在 NET 4 0 IIS 7 ASP NET 4 GB 服务器 RAM 上运行的图像转换脚本 用于调整大图像的大小 因此需要大量内存 第一个脚本将内存使用率增加到几乎 100 几乎没有为正在运行的 SQL Server 留下任何
  • 更改 R 中图形的字体

    在我的研究中 我使用 R 生成各种图表 我发现大多数图表都带有各种大小的 Sans Serif 字体 如何将图表中的所有文本 x 标签 y 标签 标题 图例等 更改为统一字体 例如Times New Roman 12pt 粗体 您可以使用外
  • Wildfly 和 Jackson @JsonIgnore 注释

    我对 Wildfly 和 Java EE 的某些部分相当陌生 我有一个使用 RestEasy 在 Wildfly 上运行的休息服务 我的 用户 实体有一个 AccessToken 实体 理想情况下 我希望能够以 JSON 形式发送用户实体
  • 如何获取一组 mysql 总行数的百分比?

    下面我有一个查询 将从用户代理表和 IP 地址链接表中获取站点最常见的用户代理 SELECT count as num string FROM useragent ip left join useragents on useragent i
  • 龙卷风框架(FacebookGraphMixin)

    我想尝试使用 Tornado Framework 将应用程序请求从我的 Facebook 应用程序发送到用户 我正在关注http www tornadoweb org documentation auth html但我不知道如何解决这个错误
  • 在 Node.js 跨平台中下载和解压缩文件的最简单方法?

    只是寻找一个简单的下载和解压解决方案 zip or tar gz任何操作系统上 Node js 中的文件 不确定这是否是内置的 或者我必须使用单独的库 有任何想法吗 只需寻找几行代码 这样当下一个 zip 文件出现时我想在节点中下载 这是理
  • Angular2 Dart - 获取 Angular2 组件内的文本

    我有一个item我在其他组件中使用的组件 项目组件通常如下所示
  • R 中均值的分组条形图

    我有一个数据集 学习者 其中包含学生测试成绩 学习者 literacy total 他们的年级 即1 2 3 12年级 和他们的性别 学习者 性别 我想创建一个条形图 其中 x 轴上有成绩 y 轴上有平均分数 每个成绩有两列 一列用于男性
  • 如何在 django 上自动创建超级用户?

    我要自动运行manage py createsuperuser on django但似乎无法设置默认密码 我怎样才能得到这个 它必须独立于 django 数据库 从 Django 3 0 开始 您可以使用默认值createsuperuser
  • 将 JPanel 与 Eclipse 的 WindowBuilder 重叠

    我正在使用 WindowBuilder Pro 进行 eclipse 并且我希望有两个彼此完美重叠的 Jpanels 然后我就可以根据组合框的选择来切换它们的可见性 当我尝试在 GUI 构建器中实现此目标时 第一个面板被第二个面板取代 请给