JPopupMenu 上的 JComboBox

2023-11-22

我正在尝试使用复合 Swing 组件作为菜单的一部分。

除了一个细节之外,一切都运行良好:该组件包含JComboBoxes,每当用户单击其中之一打开其下拉菜单时,下拉菜单将打开,但菜单会消失。是否可以使菜单保持打开状态JComboBox被点击了?

我细分了JMenu。这是对应的代码:

public class FilterMenu extends JMenu {

    public FilterMenu(String name) {
        super(name);

        final JPopupMenu pm = this.getPopupMenu();
        final FilterPanel filterPanel = new FilterPanel(pm) {
            @Override
            public void updateTree() {
                super.updateTree();
                pm.pack();
            }
        };
        pm.add(filterPanel);
    }
}

FilterPanel是自定义复合组件。这pm.pack()被调用来适应大小JPopupMenu当。。。的时候filterPanel尺寸的变化。

感谢您的帮助


你的意思是this bug

import javax.swing.*;
import java.awt.event.*;

public class Test {

    public static void main(String[] args) {
        JFrame frame = new JFrame();
        frame.setSize(400, 400);
        frame.setVisible(true);
        String[] list = {"1", "2", "3", "4",};
        JComboBox comb = new JComboBox(list);
        final JPopupMenu pop = new JPopupMenu();
        pop.add(comb);
        frame.addMouseListener(new MouseAdapter() {

            @Override
            public void mousePressed(MouseEvent e) {
                System.out.println("mousePressed");
                pop.show(e.getComponent(), e.getX(), e.getY());
            }
        });
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JPopupMenu 上的 JComboBox 的相关文章

  • Grizzly 和 Servlet 容器上下文

    我试图在我编写的 在 Grizzly 上运行的 Servlet 中获取一些注入的上下文 例如 Session 或 HttpServletRequest 但我所做的似乎都不起作用 整个过程似乎过早地停止了 并出现以下错误 SEVERE Mis
  • 为什么 DragHandler exportAsDrag 禁用我的 MouseMotionListener?

    我想实现一个简单的 JComponent 拖放 并带有 O Reilly Swing Hacks 的预览 我的问题是 如果 TransferHandler 启动 Drag MouseMotionListener 停止执行 mouseDrag
  • 无法让远程 EJB 与 Wildfly 上的 EJB 客户端 API 配合使用

    我目前正在努力让远程 EJB 调用在 wildfly 8 x 和 9 x 上工作 详细来说 它是关于使用 EJB 客户端 API 方法从独立客户端应用程序 而不是从另一个应用程序服务器 进行远程调用 远程命名方法适用于我 但不适用于我的场景
  • Infinispan 复制缓存不复制对象以供读取

    我们正在尝试在 Openshift 内的 Wildfly 11 上运行的两个 infinispan 节点上安装复制缓存 当我们在一个节点上写入一个对象时 它不会显示在另一节点上进行读取 启动时 节点在集群中连接 并且可以看到彼此 如日志中所
  • 使用 Hibernate 或 Spring 打印 DBMS_OUTPUT.put_line

    我想知道 Hibernate 或 Spring 或任何第 3 方库是否提供将 DBMS OUTPUT put line 消息直接打印到 system out 或日志文件的能力 目的是在控制台中同时显示 PLSQL 日志消息和 java 日志
  • Android - 内容值覆盖现有行

    我正在尝试使用插入值ContentValues 我已将 5 个值插入到 5 列中 运行应用程序后 我只有最后一组值的行ContentValues 前四组未插入 ContentValues cv new ContentValues cv pu
  • 如何在JUnit测试中将MockWebServer端口设置为WebClient?

    我在用着spring boot with WebClient 它被自动装配为一个 bean 问题 写一个junit集成测试 我必须使用okhttpMockWebServer 该模拟始终在随机端口上启动 例如localhost 14321 N
  • JPA 为每个项目选择最新实例

    假设我有一个会议实体 每次会议都有一个与会者和一个会议日期 在我的会议表中 我可能为每个与会者举行多个会议 每个会议都有不同的日期 我需要一个 JPA 查询 该查询将为所有与会者仅选择最新的会议 例如 如果我的桌子看起来像这样 Meetin
  • 为什么不能将 String 添加到 List 类型?

    错误 The method add capture 1 of in the type List
  • Ubuntu 的打包 - Web 应用程序

    Web 应用程序没有与 C 或类似文件不同的 make 文件 但是 它需要放置在特定的目录中 例如 var www 我是 Linux 打包新手 所以我的问题是 如何将我的应用程序打包到 deb 中 以便在安装时将其放入 etc myprog
  • 将 @RequestLine 与 Feign 一起使用

    我有一个工作 Feign 接口定义为 FeignClient content link service public interface ContentLinkServiceClient RequestMapping method Requ
  • 我们可以用java定制一个垃圾收集器吗?

    我们知道java的垃圾收集器是一个低优先级线程 在java中我们可以创建任何具有高优先级的线程 那么是否有可能拥有我们自己定制的具有可变优先级的垃圾收集器线程 我们可以根据内存管理的级别进行设置 有人尝试过吗 如果是的话 您能分享一些关于如
  • Google App Engine数据存储区字符串编码问题

    你好 我正在使用 Google App Engine 进行一个项目 并且需要存储一些字符串 我正在使用 Java 和JDOHelper getPersistenceManagerFactory transactions optional 在
  • 如何检测java控制台中而不是GUI中的箭头键? [复制]

    这个问题在这里已经有答案了 我正在编写一个应用程序 我需要检测其中的箭头键 C 有getch 函数 我们想要获取输入 然后添加对 ASCII 值的检查 我们如何检测输入箭头键 谢谢 我写了一个Java类原始控制台输入 http www so
  • JTable中动态加载大量数据

    这是我的问题 我目前有一个 JTable 其中包含 5 000 到超过 200 000 行 你知道我要说什么了 数据已经加载到内存中了 这不是问题 但是如何 我可以创建一个高效的 JTable 以便它只加载以下行 是可见的 并且任何事件仅作
  • 使用 Tomcat 和 gradle 进行休眠

    免责声明 我是 Java 新手 我正在尝试使用 Tomcat 和 Gradle 设置 Hibernate 构建运行正确 但看起来像persistence xml文件未被读取 我的项目结构如下 build gradle src main ja
  • 如何手动添加Android Studio依赖

    我多次尝试向我的项目添加依赖项 但每次都会出现错误 我想添加它们的依赖项是 de hdodenhof circleimageview 1 3 0 and com github bumptech glide glide 3 6 1 所以我想下
  • 在 Vavr 中结合任一者?

    我有几个Vavr https www vavr io Either https www vavr io vavr docs either的 我想调用一个函数Right每个 Either 的值 例如 Either
  • Spring 和 Hibernate 连接池

    如何使用 Spring 和 Hibernate 配置连接池 Thanks Venu 您可以使用 DBCP 组件
  • 错误:运算符不存在:整数 = 字符变化,使用 Postgres 8.2

    我有一个用旧版本的 Eclipse Ganymede 如果我没记错的话 开发的 Java EE Web 应用程序 我最近迁移到 Kubuntu 12 04 LTS 并将应用程序迁移到 Eclipse Kepler 我从 Eclipse 网站

随机推荐

  • PHP:gzdeflate 在多台机器上安全吗?

    在 PHP 手册中有一条关于 gzdeflate 的评论说 gzcompress 产生更长的数据 因为它嵌入了以下信息 字符串上的编码 如果您正在压缩数据 仅在一台机器上处理 那么您无需担心 关于您使用其中哪些功能 但是 如果您通过 使用这
  • Django 中的 TDD,如何对我的模型进行单元测试?

    我是 TDD 新手 并尝试在 Django 项目中应用 TDD 实践 基于伦敦学校 TDD 工作流程 我从外到内 视图层 表单层和模型层工作 在表单层 我计划构建一个模型表单 其中包含一些 自定义验证方法 我认为 基于TDD 我只需要测试我
  • 并发修改异常

    我目前正在开发一个多线程应用程序 偶尔会收到并发修改异常 平均大约每小时一次或两次 但以看似随机的间隔发生 有问题的类本质上是映射的包装器 它扩展了LinkedHashMap accessOrder 设置为 true 该类有几个方法 syn
  • 如何在 MPAndroidChart 中添加 x 轴作为日期时间标签?

    我在项目中实现了温度报告折线图 MPAndroidChart 库 在 X 轴上应绘制日期时间 在 Y 轴上应绘制温度 我刚刚在 X 轴标签中添加了日期时间作为字符串 但它已折叠 所以请任何人指导我 使用 MPAndroidChart 3 0
  • Java ConcurrentMarkSweep 垃圾收集器未清除所有垃圾

    简短形式 CMS 垃圾收集器似乎无法收集不断增加的垃圾量 最终 我们的 JVM 被填满 应用程序变得没有响应 通过外部工具 JConsole 或jmap histo live 清理一次 更新 问题似乎与 JConsole 的 JTop 插件
  • 以编程方式将 .reg 文件合并到 win32 注册表中

    以编程方式将 reg 文件合并到注册表中的最佳方法是什么 这是为了单元测试 reg 文件是一个测试工件 将在测试开始和结束时添加然后删除 或者 如果有更好的方法对注册表进行单元测试 可以使用 reg 文件删除注册表项 尽管我不确定它的记录情
  • 对每行的某些列的单元格求和

    我想计算某些列的总和 然后将此求和应用于每一行 不幸的是 我只能迈出第一步 现在我该如何让它发生在每一行 我知道 R 不需要循环 什么是好的方法 我的矩阵 zscore 如下所示 a b c t y 1 3 4 7 7 4 2 4 56 6
  • 从 p:remoteCommand 的 oncomplete 处理程序调用 JavaScript 函数 - 使用一些 JavaScript 代码模拟相同的功能

    注意 虽然这个问题涵盖了很长的文本信息和一堆 Java 代码片段 但它只是针对 JavaScript jQuery 和一些 PrimeFaces 的东西 只是
  • 使用 JDBC 将 Microsoft Access 数据库连接到 Java 并编译

    对于学校数据库项目 我们正在制作一个数据库程序 用户 GUI 和数据库 我使用 Microsoft Access 2010 创建了数据库并填充了一些示例数据 并将其保存为 mdb 格式并将其放置在我的项目文件夹中 当在 Eclipse 中运
  • 使用 JavaScript 解决线性方程和类似的代数问题

    我是 JavaScript 新手 我正在尝试编写一个解决线性方程的简单脚本 到目前为止 我的脚本只能求解正负线性方程 例如 2x 28 18x 36 4x 10 我希望它还能够解决包含乘法和除法的线性方程 代数问题 例如 2x 3x 4 2
  • java.lang.OutOfMemoryError BitmapFactory.nativeDecodeAsset()

    您好 我正在创建一个关于交通标志的应用程序 交通标志采用 png 格式 其中一些我在水平滚动视图中显示 但是当尝试打开活动时 我从 android market 错误报告中收到此错误 这是我的错误报告
  • 如何使用 Javascript 找到虚拟视口/屏幕宽度?

    是否有一致的方法来使用 Javascript 确定移动设备的屏幕和虚拟视口的宽度 我的目标平台是移动 Safari 和 Android 的原生浏览器 但我也在 Android 上使用其他浏览器进行测试 我尝试过screen width wi
  • ASP Net Core:添加与 IdentityUser 的多对多关系

    我需要在asp net core中添加与UserIdentity的多对多关系 即 一个用户可以拥有很多本书 一本书可以有很多用户所有者 我有书本课 public class Book public int Id get set 我扩展了 U
  • collect2:错误:ld 终止于信号 11 [分段错误],核心已转储

    我当时正在使用 GLFW 学习 OpenGL 当时对 makefile 并没有很好的理解 我可以使用 OpenGL 但我决定更多地学习 makefile 经过大量的网站 时间和反复试验后 我想出了这个 EXENAME OpenGL Demo
  • 删除Java中的第一个空格

    如何删除 Java 中的第一个空格 现在我正在使用这个 if str charAt 0 str str replace 只需使用str trim 摆脱所有前导和尾随空格
  • WebClient 使用凭据访问页面

    我正在尝试访问同一域 同一 asp net 应用程序上的网页 该网页受密码保护 触发此调用的网页和正在访问的网页的凭据都是相同的 这是代码 我不知道为什么我总是以登录表单 html 代码结束 using WebClient client n
  • 并行运行指定数量的命令 - 对比 xargs -P、GNU 并行和“moreutils”并行

    我正在尝试在 bash 脚本中在 26 个服务器上运行多个 mongodump 我可以运行 3 个命令 例如 mongodump h staging mongodump h production mongodump h web 同时 当一个
  • Boto connect_xxx方法和连接池

    如果我多次调用 boto connect xxx 其中 xxx 是某个服务 dynamodb s3 等 它是否每次都会创建一个新的连接池 我想做的是这样的 Flask 中的示例 app before request def before r
  • 使用R中的gsub替换数据帧列中的特定值

    我的 data frame 如下 gt df ID Value A 001 DEL 1 7 35 8 1 A 002 INS 4l 5 74 d B 023 0 C 891 2 D 787 8 E 865 DEL 3 65 1s b 我想将
  • JPopupMenu 上的 JComboBox

    我正在尝试使用复合 Swing 组件作为菜单的一部分 除了一个细节之外 一切都运行良好 该组件包含JComboBoxes 每当用户单击其中之一打开其下拉菜单时 下拉菜单将打开 但菜单会消失 是否可以使菜单保持打开状态JComboBox被点击