我的 GUI 中有一个部分是根据对象列表动态生成的。因此,对于该列表中的每个对象,我想创建一个 JButton 并关联一个键盘快捷键。
例如:
for (String tag : testTags) {
new JButton(tag).setMnemonic(KeyEvent.VK_F1);
}
如何以优雅的方式使代码“setMnemonic(KeyEvent.VK_F1)”动态化?是否有某种方法可以自动获取一系列键,然后在此迭代中使用它?
谢谢!
AbstractButton.setMnemonic(int)
只需遍历接受的整数范围即可。
创建一个包含您的密钥的数组
int[] keys = {KeyEvent.VK_F1,KeyEvent.VK_F2,[...]};
或迭代 F1-F12 键的范围 (112 - 123)
int key = KeyEvent.VK_F1;
for (String s : strings) {
new JButton(s).setMnemonic(key++);
}
不过,您必须检查键是否仍在范围内(123 是 F12)。