1

メインの gui クラスと gui ログ クラスがあります。gui ログ クラスは JPanel を拡張し、ロギング ステートメントの出力に使用される JTextField を追加するだけです。JTextfield(スクロールペインにあります)をパネルに追加します

add(scrollPane, BorderLayout.WEST);

このクラスは、JFrame を拡張して BorderLayout を使用するメインの GUI クラスに追加されます。パネルは最初に JSplitPane に追加され (垂直分割を使用)、次に SplitPane が追加されます。

getContentPane().add(splitPane);

私の問題は、ログ パネル内の JTextfield を画面の一番左に配置したいということですが、使用する BorderLayout 設定 (CENTER、EAST、SOUTH...) に関係なく、常に中央に残ります。

これを解決する方法を知っている人はいますか?

また、分割ペインのサイズを変更するときに JTExt 領域のサイズを変更する方法を知っていますか?

ありがとう

画像: ここに画像の説明を入力

左は私が得ているもの、右は私が欲しいものです。

4

1 に答える 1

5

下部の JPanel は、JTextArea を保持する JPanel のデフォルトの FlowLayout を使用している可能性が高く、追加されたコンポーネントを中央に配置しようとするレイアウトです。GUI を機能させるには、この JPanel で BorderLayout を使用する必要がありますsetLayout(new BorderLayout(...))(... は、デフォルトを受け入れる場合は空白であるか、レイアウトの水平および垂直ギャップ用に 2 つの int 定数があります)。

于 2012-02-23T21:46:32.050 に答える