0

BorderLayout() を持つ JPanel があります

BorderLayout.CENTER にはスクロール可能なものを実装する JComponent が含まれており、北には JLabel が含まれています。JLabel で setText() を呼び出すと、JComponent の位置がデフォルトの位置にリセットされ、左上の点が表示されますか? これを回避する方法はありますか。API を調べましたが、何も表示されません。

どんな助けでも大歓迎です。

4

1 に答える 1

1

BorderLayout.CENTER には、スクロール可能を実装する JComponent が含まれています。

コンポーネントが JScrollPane に追加された場合にのみ意味があります。コンポーネントのレイアウトに関しては関係ありません。

JLabel で setText() を呼び出すたびに、JComponent の位置がデフォルトの位置にリセットされます。

あなたのプログラムが何をしているのか本当にわかりません。これにより、コンポーネントを適切な位置に配置するレイアウト マネージャーが呼び出される可能性があります。したがって、これが位置を変更した場合、以前は適切な位置になかったことを意味します。

したがって、基本的に、回答を提供するのに十分な情報がありません。

さらにヘルプが必要な場合は、SSCCEを投稿してください。

于 2010-02-27T02:17:23.963 に答える