gpt4 book ai didi

java - 从 Java 中的 JPopupMenu 操作监听器获取目标

转载 作者:行者123 更新时间:2023-12-01 17:16:06 25 4
gpt4 key购买 nike

我目前正在用 Java 制作一个 TODO GUI 应用程序以供练习。我希望添加到列表中的每个项目都有一个删除选项。所以我创建了一个上下文菜单(或 swing 中的 JPopupMenu)。我还添加了一个 JMenuItem,它将从列表中删除该项目。但是,有一个问题...我为按钮添加了一个 Action 监听器并传递了一个事件变量,我首先认为事件变量指向 ListItem,但它实际上指向 MenuItem。

那么,如何获取目标(ListItem)以最终将其从列表中删除?

DefaultListModel<String> listModel = new DefaultListModel<>();
private JList<String> List;

List.setModel(listModel);

JPopupMenu listCtxMenu = new JPopupMenu();

JMenuItem deleteItem = new JMenuItem("Remove Item");
deleteItem.addActionListener(e -> {
// Access the Target...
});

listCtxMenu.add(deleteItem);

List.setComponentPopupMenu(listCtxMenu);

最佳答案

我做到了。我按照 MadProgrammer 的说明进行操作:

Basically, you can attach a mouse listener to each component and when it triggers a popup, you can build the menu dynamically, allowing you to seed the item itself.

谢谢。

关于java - 从 Java 中的 JPopupMenu 操作监听器获取目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61384336/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com