3

こんにちは、最初の分割ペインビューを実装していますが、うまく機能していないようで、次の出力が得られます...

ここに画像の説明を入力

これがコードです。

//Create Album Panel
    albumPanel.setLayout(new FlowLayout());

    //Add List view
    albumList.setMinimumSize (new Dimension(150,150));
    albumPanel.add(new JScrollPane(albumList));


    //Add Text Area
    textArea.setLineWrap(true);
    textArea.setWrapStyleWord(true);
    textArea.setEditable(false);
    textArea.setMinimumSize (new Dimension(150,150));
    albumPanel.add(textArea);

    //Split Pane
    JSplitPane splitpane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, albumList, textArea);

    albumPanel.add(splitpane, BorderLayout.CENTER);
4

2 に答える 2

2

コンポーネント、リストとテキスト領域を保持する JScrollPanes を JSplitPane に追加して、それらを表示する必要があります。そして、David が述べているように (彼に 1+)、JSplitPane を保持するコンテナはそれを拡張できるようにする必要があり、BorderLayout はこれに適しています。

また、コンテナに複数回コンポーネントを追加しないでください。コンポーネントを JScrollPanes に追加してから、JScrollPanes を JSplitPane に追加します。コンポーネントを albumPanel コンテナにも追加しないでください。この点で、あなたのコードは少し統合失調症です。

于 2012-09-22T14:57:42.720 に答える
2

albumPanelレイアウトをに設定しましたが、に追加するときに定数FlowLayoutを使用しようとしました:BorderLayoutJSplitPane

albumPanel.add(splitpane, BorderLayout.CENTER);

albumPanelレイアウトをBorderLayoutviaに設定する必要がありますnew BorderLayout()

また、コンポーネントのサイズを に設定させるのは得策ではありませLayoutManagerん。

于 2012-09-22T14:57:55.047 に答える