Apache Pivot: рамка внутри окна

1

Я новичок в 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) {
                 ......
            }
        });
    }
}

Результат этого кода похож на приведенный ниже рисунок:

Изображение 174551

Как вы можете видеть, есть окно Mac снаружи и окно рамки внутри.

Мой вопрос в том, как я могу избавиться от системного окна или избавиться от окна кадра, чтобы отобразилось только одно окно?

Большое спасибо.

Теги:
apache-pivot

1 ответ

0

Я нашел почтовую рассылку 2012 года, в которой Pivot не поддерживает собственные меню, поэтому ваше приложение всегда будет жить в системном окне.

Однако в этом списке рассылки было предложено взломать Java AWT Frame для получения системных меню.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню