2011-07-15 25 views
0

コンボボックスより長いコンボボックスから項目を選択すると、文字列の末尾が切り詰められ、フィットする文字列の先頭部分のみが表示されます。 コンボボックスが編集可能に設定されている場合は、表示されている文字列の最後で、先頭が切り捨てられます(ユーザーが入力したように意味があります)編集可能なJComboBoxでキャレットの位置を設定する

設定方法はありますかコンボボックスを編集可能にしながら、値の先頭を表示するエントリの先頭にキャレットの位置?これはコンボボックス用のカスタムエディターを作成することで実現するものですか?

答えて

3

これは一つの方法です:

JComboBox comboBox = new JComboBox(...) 
{ 
    @Override 
    public void setSelectedItem(Object item) 
    { 
     super.setSelectedItem(item); 
     ComboBoxEditor editor = getEditor(); 
     JTextField textField = (JTextField)editor.getEditorComponent(); 
     textField.setCaretPosition(0); 
    } 
}; 
+0

ありがとうcamickr、魔法のように動作します - 私はあなたがこのような何かを行うことができなければならないと思ったが、かなりそれをうまくできませんでした – Kallikantzaros

関連する問題