java - 有没有办法让“Del”作为 JMenuItem 的快捷方式而不是“删除”
问题描述
当我使用此代码时,我得到“删除”作为快捷方式。我想得到“Del”(删除键)
private JMenuItem delRef = null;
del = new JMenuItem("delete");
del.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0));
解决方案
从相关帖子中的答案中,我发现您请求的keyCode
(的第一个参数)是.getKeyStroke
110
然后我做了:
System.out.println(KeyStroke.getKeyStroke(110, 0));
哪个打印pressed DECIMAL
。
所以keyCode
你正在寻找的实际上是KeyEvent.VK_DECIMAL
,它只适用于小键盘的删除键(至少在我测试过的情况下)(仅当 numlock 开启时)。
因此,要回答,您可以使用:
JMenuItem item = new JMenuItem("Delete");
item.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DECIMAL, 0));
item.addActionListener(e -> System.out.println("Action delete!"));
推荐阅读
- windows - DPAPI 如何保护系统帐户的 MasterKey?
- arrays - AWK - 如何轻松定义自定义值列表并循环遍历它?
- flutter - 创建屏幕的最佳方法包含颤振中的细节
- sql-server - 具有列名的多列的 MAX
- sql - 如何在 SQL Server 中获取累积总和(Z=Z+A+BC)
- r - 使用 R 从谷歌驱动器下载 csv
- google-cloud-platform - 大三角帆 | webhook 作为舞台
- kubernetes - Kubernetes - 部署/副本集
- c++ - 错误:重新定义 'get_pointer'T* get_pointer(T* p) c++11
- python - 我在 python 上打开日志文件时丢失了数据