私はオブジェクトを私のJFrame
に持っています。ただし、必要に応じてユーザーが代替値を入力できるように編集可能にしたいと考えています。残念ながら、setEditable(true)
を使用して編集を有効にすると、幅が大幅に増加します。どのようにして幅が最大の選択可能なアイテムの幅と同じに保ちながらJComboBox
の編集を許可することができますか?幅に影響を与えずにJComboBoxを編集可能にします。
JComboBox
がFlowLayout
とJPanel
であるJPanel
の幅を変更するとJComboBox
の幅に影響を与えませんので、しかし、私はこれが関連しているとは思いません。
これまでのところ、私は必要な動作を生成することが分かっ唯一の方法は次のとおりです。 'comboBox.setPreferredSize(新しいjava.awt.Dimension(50、22)) ; ' –
「唯一の方法」とはどういう意味ですか?表示する文字数を指定できるソリューションを提供しました。実際の次元をハードコードする必要はありません。 – camickr
申し訳ありません。私が最初にあなたのソリューションを試してみたとき、コードを動作させない 'pack()'を実行する前に 'comboBox.setEditable(true)'を実行していました。 'pack()'の後に移動したとき、あなたのコードは意図した通りに動作しました。私はなぜ違いがあるのか分かりません... –