我似乎无法在Mac上同时运行 SWT 和 Swing 。
我明白要在Mac上运行Swt我必须传递参数-XstartOnFirstThread
但是这似乎打破 Swing 。
这是我写的一个简单片段。他们都没有创建任何窗口是的,但是他们使用代码来进行 SWT 初始化和 Swing 初始化。
public class Snippet
{
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable()
{
@Override
public void run()
{
System.out.println("Muhahahaha");
}
});
Display display = new Display();
display.dispose();
}
}
如果使用-XstartOnFirstThread
执行它,您将发现程序永远不会执行。
我怎样才能使它们在和谐中运行并执行到最后?
感谢任何人的帮助。我花了一个星期没有成功解决这个问题。
答案 0 :(得分:1)
一起运行 Swing 和 SWT 不是一个好习惯。这两者完全不同(从逻辑上讲),你应该只选择其中一个进一步(注意 SWT 更可定制,并试图结合 AWT 和 Swing ,而 Swing 更受限制并使用平台的原生小部件)。也许this会帮助你改变主意。
但是,如果你真的认真地使用它们,你应该记住你不应该在同一个窗口中混合它们,事情应该正常工作。
祝你好运!