添加到 JMenuItem 的附加信息

发布于 2024-08-23 18:20:41 字数 193 浏览 6 评论 0原文

我正在开发一个java应用程序,并手动创建一个动态JMenu(取决于输入数据)。我为菜单的每个菜单项添加相同的操作。问题是,根据调用的菜单项,我想每次采取不同的操作。有没有一种简单的方法可以做到这一点(比如每个 JMenuItem 的 setData(Object data) 或者我被迫从 JMenuItem 派生)?

预先感谢,

尤利安

I'm developing a java application and I create a dynamic JMenu by hand (depending on the input data). I add the same action for each menu item of the menu. The problem is that depending on the menu item called I would like to take a different action each time. Is there a simple way of doing this (Something like setData(Object data) for each JMenuItem or am I forced to derive from JMenuItem)?

Thanks in advance,

Iulian

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

记忆之渊 2024-08-30 18:20:41

我想你可以在你的 Action 的 actionPerformed 方法中使用 ActionEvent.getSource 。将事件源与您的 JMenuItem 进行比较。

要存储附加信息,您可以使用 putClientProperty 或扩展 JMenuItem

i guess you can use ActionEvent.getSource in the actionPerformed method of your Action. compare the source of the event with your JMenuItem's.

to store additional info, you can use putClientProperty or extend JMenuItem

淡莣 2024-08-30 18:20:41

根据最初的问题和评论,我建议 Julian 将其用字符串和关联操作构建的 JMenuItem 替换为仅用操作构建的 JMenuItem,提供文本和关联行为。此操作可以引用应用程序中的其他元素来提供其所需的行为。

According to initial question and remarks, I would suggest Julian to replace its JMenuItem built with a string and an associated action with a JMenuItem built with only an action, providing both the text and the associated behaviour. This action could reference others elements from application to provide its requireds behaviour.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文