如何防止 JMenuItem 在单击 JMenuItem 时关闭菜单

2023-12-10

我该如何预防JMenuItem从关闭菜单时JMenuItem被点击了?

The JMenuItem已启用。

这就是场景,我有 3JMenuItems:

JMenuItem: A, B, C;

C显示一个整数X.

A和B用于递增或递减X值 1。 如果单击 A 或 B,则默认性质是单击后菜单将关闭。 我希望能够重复单击 A 或 B 并使菜单保持打开状态,并在每次单击时执行相关的“操作”。

Thanks!


首先,使用菜单来执行此操作可能是错误的方法。JSpinner似乎更合适。然而,要做到这一点JMenuItem你可以子类化MenuItemUI of the LookAndFeel您正在使用,并覆盖doClick(...)方法使得clearSelectionPath()未调用,单击该项目时将关闭菜单。

例如,如果您使用 MotifLookAndFeel你可以这样做:

menuItem.setUI(new MotifMenuItemUI() {
    @Override
    protected void doClick(MenuSelectionManager msm) {
        menuItem.doClick(0);
    }
});

我自己还没有尝试过,但我认为它会起作用。

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

如何防止 JMenuItem 在单击 JMenuItem 时关闭菜单 的相关文章

  • 如何用Java创建图像

    比如说在我的程序中 我有这个paint 方法 我的愿望是创建所绘制的矩形的图像 使用 for 循环 我尝试了下面的方法 它确实给了我那些矩形 蓝色 但背景是全黑的 当我运行程序而不创建图像 仅在 JFrame 上绘制矩形时 背景为白色 我怎
  • 如何在流中收集到TreeMap中?

    我有两个Collectors groupingBy在流中 我需要收集所有信息TreeMap 我的代码 Map
  • Jackson Json 将对象反序列化为列表

    我正在使用 Spring 的 Web 服务RestTemplate并反序列化Jackson 在来自服务器的 JSON 响应中 其中一个字段可以是对象或列表 这意味着它可以是 result or result 有没有办法通过对我要反序列化的类
  • GSON:自定义对象反序列化

    好吧 我编辑了这个问题 因为它不够清楚 Edit 2 更新了 JSON 文件 我在 Android 应用程序中使用 GSON 我需要解析来自服务器的 JSON 文件 而且有点太复杂了 我不想让我的对象结构太重 所以我想简化内容 所以我的对象
  • 可以向 @ManyToMany Hibernate 额外表添加额外字段吗?

    我有这两类 表 Entity Table name course public class Course Id Column name courseid private String courseId Column name coursen
  • PrintStream是有缓冲的,但是flush不会降低性能,而BufferedOutputStream会加速性能

    我预计由于 PrintStream 是缓冲的 通过在每次 print 之后添加刷新操作 速度性能应该会显着降低 但事实并非如此 如下面的代码片段所示 此外 将 PrintStream 包裹在 BufferedOutputStream 周围可
  • 可以混合使用 JVM 语言吗?即:Groovy 和 Clojure

    我知道你可以轻松地混合groovy java clojure java 无论什么JvmLang java 这是否也意味着我也可以让 clojure 和 groovy 代码进行交互 如果我使用 Grails 或 jRoR 我也可以在该环境中使
  • 在 javafx 中注册鼠标处理程序,但处理程序不是内联的

    我有一个 JavaFX 应用程序变得有点大 我想保持代码的可读性 我有一个折线图 我希望内置缩放功能 该功能在单击鼠标时发生 我知道我需要向图表注册鼠标侦听器 我无法从 Oracle 示例中弄清楚什么 即如下所示 http docs ora
  • 为什么 Java 中的 hashCode() 可以对不同对象返回相同的值?

    引用我正在读的书中的一段话首先Java http www amazon co uk Head First Java Kathy Sierra dp 0596009208 关键是 哈希码可以相同 但不一定保证对象相等 因为使用的 哈希算法 h
  • 比较和删除列表和数组java中不存在的元素

    我有一个String数组和一List
  • 将传入字符串的 unicode 表示形式转换为 UTF-8?

    我正在读取一些已经转换为 html 样式 代码的数据 我现在需要将其转换回 UTF 8 字符以供查看 不幸的是我无法使用浏览器查看该字符串 我读过有关 java 中的转换的内容 似乎如果你有一个 uxxxx 字符串 那么编译器会为你转换 然
  • 使用antlr4获取预处理器行并解析C代码

    我正在使用 Antlr4 来解析 C 代码 并使用以下语法来解析 链接到 C g4 https github com antlr grammars v4 blob master c C g4 上面的语法默认不提供任何解析规则来获取预处理器语
  • 如何减少 JSF 中的 javax.faces.ViewState

    减少 JSF 中视图状态隐藏字段大小的最佳方法是什么 我注意到我的视图状态约为 40k 这会在每次请求和响应时下降到客户端并返回到服务器 特别是到达服务器时 这对用户来说会显着减慢 我的环境 JSF 1 2 MyFaces Tomcat T
  • 日志记录在 Android 设备上实际上有什么作用?

    我一直在 Android 示例中看到这样的代码 try catch Exception e Log e Error e getMessage 什么是Log e实际上在物理设备上做什么 它进入系统日志 开发人员可以通过 SDK 工具访问该日志
  • 获取证书链

    我正在 Java 中使用 X509 证书 给定一个证书 是否可以在签名层次结构中找到所有其他证书 直到找到根证书 我有一个证书文件 带有 cer扩展名 我想提取父签名证书 我想继续查找该证书的父证书 直到获得最终的自签名根证书 我已经检查了
  • 为什么jdk中没有ConcurrentLinkedHashMap类?

    这个问题直接接着问从我之前的问题来看 https stackoverflow com q 12299731 1527084 我想我的第二个问题的答案是否定的 所以我想了解为什么 java util concurrent 包中没有 Concu
  • WebSocketStompClient 将无法连接到 SockJS 端点

    我正在尝试新的 从版本 4 2 开始 java STOMP 客户端支持 我的出发点是入门指南 使用 WebSocket 构建交互式 Web 应用程序 http spring io guides gs messaging stomp webs
  • Maven `help: effective-pom` 只为单个项目生成,而不是所有项目

    我想为多模块构建中的所有子项目生成有效的 pom The help effective pom文档here http maven apache org plugins maven help plugin usage html The hel
  • 在 Java 服务器中验证 Windows 用户

    我正在开发一个用 Java 编写的服务器和一个在同一网络上的 Windows 计算机上运行的客户端 用 Net 编写的桌面应用程序 我希望进行一些基本身份验证 以便服务器可以确定运行客户端的用户的用户名 而不需要用户在客户端中重新输入其 W
  • 对 Java 协议缓冲区对象进行一些小更改

    我想在 Java 协议缓冲区对象树的深处进行一个小更改 我可以使用 getBuilder 方法来创建一个新对象 该新对象是旧对象的克隆并进行一些更改 当深入完成此操作时 代码会变得丑陋 Quux Builder quuxBuilder fo

随机推荐

  • 使用计时器更新列表 UI

    我正在尝试更新ListView with timer 我已经实现了 android UI 计时器 但我的问题是如何使用它ListView我需要在一定时间间隔后更新列表的每一行 处理程序如何更新列表的每一行 即假设TextView位于我将显示
  • 选择另一个受密码保护的数据库中的表?

    在 Microsoft Access 2003 和 Visual Basic 6 中 我尝试将表复制到另一个受密码保护的访问数据库 如下所示 Select INTO table2 IN database2 mdb Password Test
  • 在SSRS报告中显示条形码

    我正在尝试在 SSRS 报告中显示条形码 我在 Visual Studio 中的条形码报告中创建了一个字段 并将字体类型更改为 BC C39 3 到 1 Wide 格式 我用来显示的相应文本是 hellobarcode 每当我生成报告时 它
  • Clojure - 将字符串转换为整数向量的向量

    我试图解析一个文件并使用每一行来执行任意数量的函数和参数 我想调用的函数接受两个整数向量向量用于矩阵乘法 我能够将参数解析为一个向量 这样我就可以对其和解析的函数符号调用 apply 但我仍然需要将参数从字符串转换为适当的类型 我怎样才能实
  • “-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data”未调用

    看看这个代码片段 void connection NSURLConnection connection didReceiveResponse NSURLResponse response webData setLength 0 void c
  • 删除 websphere 中的 cookie - 如何注销

    我正在使用另一个网页 该网页通过 URL 将用户身份验证 AD 登录 传递到 WebSphere 当我注销时 我将重定向到登录页面 并且已经登录 因为我的会话从未关闭 我尝试了一些方法来禁用 WebSphere 的 cookie 但没有任何
  • IE中的rowspan和colspan问题

    因此 我需要创建具有复杂的 colspan 和 rowspan 系统的表 你可以看一下here 这是HTML table cellspacing 0 cellpadding 0 style width 100 tr td img src h
  • 如何在 MATLAB 中为该向量生成映射键?

    我有一个正在查看多个元素的函数 每个元素都是 8x1 列向量的形式 向量中的每个条目都是小于 1000 的整数 每次看到这样的向量时 我都会在检查该向量是否已在此列表中后将其添加到 已见过 向量列表中 该函数将检查约 100 000 个此类
  • 如何使用 Perl 找到目录及其所有子目录中最新的 .pl 文件?

    如何扫描整个目录的内容 包括其子目录的内容 并找到最新的 pl使用 Perl 在其中创建文件 我想构建所有完整文件路径的排序数组 列表 pl目录树中的文件 因此 例如 如果我的基本目录是 home users cheeseconqueso
  • C#同时执行2个线程

    我正在尝试在 HTTP 处理程序中重现线程错误条件 基本上 ASP net 工作进程正在创建 2 个线程 它们在加载某个页面时同时调用我的应用程序中的 HTTP 处理程序 http 处理程序内部是一个非线程安全的资源 因此 当两个线程尝试同
  • Visual Studio 不在我的 Asp.net MVC 视图中显示 Linq 扩展

    这让我感到困惑 我似乎无法使 Visual Studio 2010 识别视图代码中的 System Linq 扩展方法 Intellisense 不起作用 并且 Visual Studio 红色下划线无法识别的扩展方法 这些是 web co
  • 在闪亮页面中使用可变数量的输入字段

    我的问题如下 我有一个闪亮的应用程序 它根据用户输入显示可变数量的输出元素 例如 详细信息如下 使用闪亮动态添加绘图到网页 但是 我还想向每个输出元素添加一个输入元素 允许用户为输出指定一些修饰符 例如 让用户选择将每个元素视为绘图还是表格
  • 在相同或最接近的日期上进行 SQL 连接

    我有两张桌子 表 a 每个 id 1 行 id observation date a 2015 03 01 b 2015 03 03 c 2015 03 05 表 b 每个 ID 有多行 但每个 ID 日期组合都是唯一的 id insert
  • 使用“geom_line()”,以 X 轴为因子

    假设我有一个数据框 hist lt data frame date Sys Date 0 13 counts 1 14 我想使用工作日绘制总计数line连接点 以下放points对每个值 hist lt transform hist wee
  • 当我从 .jar 运行时,为什么 Java Sound 的行为有所不同?

    The play下面的方法来自一个类 该类在实例化时将 wav 文件读取到名为的字节数组中data 并将声音格式存储在AudioFormat称为的对象format 我有一个程序调用play from a java util Timer 当我
  • Pandas:将数据帧列转换为字典,其中 col 标题作为 dict 键,col 值作为 dict 值

    我有一个数据框 如下所示 NAME ID 155 ARBITRARY A 697381 208 ARBITRARY B 691820 265 ARBITRARY C 691782 272 ARBITRARY D 695593 我想将其转换为
  • C# Excel 互操作:HRESULT 异常 (DISP_E_BADINDEX)

    我正在尝试部署一个在我的开发电脑和其他一些工作站上运行良好的应用程序 但是 有些用户收到了我似乎无法理解的错误 该程序是一个具有 Excel Interop 功能的 C dotNet 应用程序 Office 2003 我似乎遇到了 索引 的
  • 康威的生命游戏,数邻居[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 我的代码中某处有错误 我认为我正在进入无限循环 基本上
  • 调整 Google Cloud Storage 中的图像大小

    appengine image 包可以很好地处理存储在 Blobstore 中的图像 但是 调整存储在 Google Cloud Storage 中的图像大小的好方法是什么 您可以将相同的图像服务与 Google Cloud Storage
  • 如何防止 JMenuItem 在单击 JMenuItem 时关闭菜单

    我该如何预防JMenuItem从关闭菜单时JMenuItem被点击了 The JMenuItem已启用 这就是场景 我有 3JMenuItems JMenuItem A B C C显示一个整数X A和B用于递增或递减X值 1 如果单击 A