GUI Jinternal кадр - PullRequest
       9

GUI Jinternal кадр

0 голосов
/ 02 апреля 2012

Как создать jinternalframes, чьи действия зависят друг от друга?Например, предположим, что у меня есть два внутренних кадра, если я минимизирую один кадр, второй кадр должен занимать остальную часть Jdesktopane и наоборот.Более подробно мы можем взять затмение в качестве примера того, кто является фреймом рабочего пространства и фреймом написания программы, который зависит друг от друга.Кто-нибудь может помочь, что за этим стоит?заранее благодарю за ответы

1 Ответ

0 голосов
/ 02 апреля 2012

Вы можете добавить WindowListener к каждому кадру и прослушивать изменения состояния внутреннего кадра.

final JInternalFrame f1, f2;
//...
f1.addInternalFrameListener(new InternalFrameAdapter() {
    void internalFrameIconified(InternalFrameEvent e) { 
       // respond to iconfiy
    }
});
f2.addInternalFrameListener(new InternalFrameAdapter() {
    void internalFrameIconified(InternalFrameEvent e) { 
       // respond to iconify
    }
});

Что касается фактического обозначения внутреннего фрейма, вам нужно использовать менеджер рабочего стола, соответствующий вашему JDesktopPane, для выполнения действия:

JDesktopPane desktop;
DesktopManager mgr = desktop.getDesktopManager();
mgr.iconifyFrame(frame);
...