1

JInternalFameメインフレームのボタンでを使用できますか? フレームにJDesktopPaneはもちろん が入っています。ボタンをクリックすると、JInternalFrameHow?が表示されます。

4

2 に答える 2

6

JButtonを に直接配置する方法はわかりませんが、JDesktopPaneメニュー項目を使用して を作成および選択できますJInternalFrame。このでは、各メニュー項目は でAction定義されたを使用JInternalFrameして、対応するフレームを選択します。

class MyFrame extends JInternalFrame {

    private Action action;

    MyFrame(JDesktopPane desktop, String name, int offset) {
        …
        action = new AbstractAction(name) {
            @Override
            public void actionPerformed(ActionEvent ae) {
                try {
                    MyFrame.this.setSelected(true);
                } catch (PropertyVetoException e) {
                    e.printStackTrace();
                }
            }
        };
    }

    public Action getAction() { return action; }
}

補遺: @camickr が示唆するように、 a を a にJButton直接配置することは技術的に可能ですJDesktopPaneが、実際に使用するのは難しいかもしれません。

于 2010-04-30T01:04:50.800 に答える
2

質問の意味がよくわからないので、ちょっと補足します。

a) JInternalFrme は、必要なコンポーネントを追加できるという点でフレームのようなものです。

b) JButton は、内部フレームに追加された場合でもフレームに追加された場合でも同じように機能します

作業例については、 Swing チュートリアルを読むことから始めることをお勧めします。「内部フレームの使用方法」および「ボタンの使用方法」のセクションから始めることができます。

それでも問題が解決しない場合は、試したことを示すSSCCEを投稿してください。

于 2010-04-29T23:58:09.087 に答える