我有一个 JInternalFrame
内部 JDesktopPane
.
在这里面,我有几个 JTextField
的和 JTextArea
的。
没有一个键盘快捷键在我的任何内部框架中工作。。。如。: Cmd+C
/ Cmd+V
,偶数 Cmd+A
,跳到行的开头,等等。
是否有一些设置允许键盘快捷键在内部框架内工作?
我的swing应用程序只是一个将xml格式转换为字符串的简单工具。而复制粘贴输入是其中必不可少的一部分。
我正在添加应用程序中的一些片段。。。但我认为我还没有编写任何专门禁用键盘快捷键的代码。
//sample create
private JTextField tfPattern = new JTextField("*.*");
private JTextArea taLog = new JTextArea();
private JScrollPane spLog = new JScrollPane(taLog);
//sample add
outer.add(tfPattern, "spanx 2, wrap");
outer.add(spLog, "span");
//MigLayout for the panels
private JPanel outer = new JPanel(new MigLayout( "","[fill][450:700:,grow, fill][fill]","[][][80::100, fill][][][][][80::100, fill][][300::,grow, fill][]" ));
//Mac menu bar setting
System.setProperty("apple.laf.useScreenMenuBar", "true");
//Installing WebLaf at the beginning
WebLookAndFeel.install();
//beginning of app I setup font scaling
private static void setupFontScaling() {
for (Map.Entry<Object, Object> entry : javax.swing.UIManager.getDefaults().entrySet()) {
Object key = entry.getKey();
Object value = javax.swing.UIManager.get(key);
if (value != null && value instanceof javax.swing.plaf.FontUIResource) {
javax.swing.plaf.FontUIResource fr=(javax.swing.plaf.FontUIResource)value;
javax.swing.plaf.FontUIResource f = new javax.swing.plaf.FontUIResource(fr.deriveFont(fr.getSize2D() * 0.9f));
javax.swing.UIManager.put(key, f);
}
}
}
更新:发布问题后意识到weblaf可能是问题所在。评论了weblaf安装的行,现在可以复制/粘贴了。
然而,weblaf过去可以很好地处理jframes。想知道为什么jinternalframes和weblaf有问题。
暂无答案!
目前还没有任何答案,快来回答吧!