我试图让一个基本的Swing 应用程序在我的Mac OS X 10.8.2(Java 版本 1.6.0_37)机器上运行,每次我尝试从Eclipse运行它时,都会出现框架,但我无法交互用它。
我试图从一个基本的、干净的开始,在Eclipse中创建一个新的Swing Application Window项目。这将生成以下骨架代码: (WindowBuilder->Swing Designer->Application Window)
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.BorderLayout;
public class Test {
private JFrame frame;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Test window = new Test();
window.frame.setVisible(true);
window.frame.pack();
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
public Test() {
initialize();
}
/**
* Initialize the contents of the frame.
*/
private void initialize() {
frame = new JFrame();
frame.setBounds(100, 100, 450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JButton btnPress = new JButton("Press");
frame.getContentPane().add(btnPress, BorderLayout.CENTER);
}
}
一切似乎都很好,但是当我从 Eclipse 运行它时,框架不允许我与任何组件交互(在我的非示例代码中,有按钮和选项卡)。
此外,在控制台中,我看到如下内容:
2012-11-09 14:30:27.624 java[8107:707] [Java CocoaComponent compatibility mode]: Enabled
2012-11-09 14:30:27.626 java[8107:707] [Java CocoaComponent compatibility mode]: Setting timeout for SWT to 0.100000
是否有一些我必须更改的特定于 Mac 的设置?(我使用的是最新的默认 Mac JRE)