setBezelStyle不适用于SWT NSButton - java

时间:2017-10-23 21:27:50

标签: java objective-c macos cocoa swt

我正在创建一个SWT(移植的Mac OSX版本)应用程序。我正在尝试设置一个特定按钮,使其具有内嵌式#34;内联式和#34;。这就是我希望我的按钮在mac上的样子。

inline button(在xcode的storyboard视图中截图)

我用来尝试获取此内联按钮的代码:

// created button named "inlineButton" and applied layout to it.
// here is where I set the bezel style and text.
NSButton nsInlineButton = (NSButton) inlineButton.view;
nsSaveButton.setBezelStyle(15); // NSBezelStyleInline is enum 15 for cocoa
this.inlineButton.setText("Inline Button");

结果:

buggy not inline button(从我的java程序截图)

我还尝试重绘和重新布局shell以及其他各种方法但无济于事。 这是一个错误还是我做错了什么?

1 个答案:

答案 0 :(得分:0)

解决。我只需要添加SWT风格的“FLAT”

this.inlineButton = new Button(this, SWT.FLAT);
NSButton inlineButton = (NSButton) inlineButton.view;
inlineButton.setBezelStyle(15);