Action pasteAction = new DefaultEditorKit.PasteAction();
JPopupMenu popMenu = new JPopupMenu();
menuItem = new JMenuItem();
menuItem.addActionListener(pasteAction);
menuItem.addActionListener(searchAction);
menuItem.setText("Paste & Search");
popMenu
菜单显示;在鼠标右键单击 JTextField
pasteAction
已准备就绪。
searchAction
具有检查 JTextField
是否为空的代码。如果不为空,则进行搜索...
问题 是——我认为——pasteAction
和searchAction
被同时调用。因此,无论 pasteAction
是否已完成其工作,都会调用 searchAction
。因此,当调用 searchAction
来检查 JTextField
内容时;它发现它是空的!
如何使 searchAction
依赖于 pasteAction
的完成?
最佳答案
一个选择是制作一个通用的 Action 实现,它接收一系列要连续执行的操作。然后遍历该列表,一次调用一个。现在使用该新实现并将其添加为 Action 监听器。
关于java - 如何使一些 Action 依赖于另一个 Action 的完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35225542/