我是Apache Pivot的新手。
我正在尝试用菜单栏创建一个简单的窗口。
我用来加载主框架的代码是:
public class MyApp implements Application {
private Frame frame;
@Override
public void startup(Display display, Map<String, String> strings) throws Exception {
BXMLSerializer bxmlSerializer = new BXMLSerializer();
frame = (Frame)bxmlSerializer.readObject(MyApp.class, "/gui/MainFrame.bxml");
frame.open(display);
}
@Override
public boolean shutdown(boolean b) throws Exception {
if(frame != null) {
frame.close();
}
return false;
}
@Override
public void suspend() throws Exception {
}
@Override
public void resume() throws Exception {
}
public static void main(String[] args) {
DesktopApplicationContext.main(MyApp.class, args);
}
}
主框架BXML如:
<root:MainFrame title="MyApp" maximized="true"
xmlns:bxml="http://pivot.apache.org/bxml"
xmlns="org.apache.pivot.wtk"
xmlns:root="com.myproject.client">
<menuBar>
<bxml:include src="wtk/menubar.bxml"/>
</menuBar>
</root:MainFrame>
MainFrame.java就像:
public class MainFrame extends Frame implements Bindable {
public MainFrame() {
Action.getNamedActions().put("myaction1", new Action() {
@Override
public void perform(Component source) {
......
}
});
}
}
此代码的结果如下图所示:
正如您所看到的,外面有一个Mac窗口,里面有一个框架窗口。
我的问题是如何摆脱系统窗口或摆脱框架窗口以便只显示一个窗口?
非常感谢。
答案 0 :(得分:0)
我发现2012 mailing list post暗示Pivot不支持本机菜单,因此您的应用将始终存在于系统窗口中。
但是,该邮件列表帖子确实建议使用Java AWT Frame来获取系统菜单。