このJavaファイルの実行中に中オプションを選択すると、それが選択され、プロパティも適用されましたが、もう一度実行すると、コンボボックスのインデックスで小オプションになります。
この選択したサイズを保持するには、グローバルな場所が必要です (シングルトン パターンで考えています)。このウィンドウを再度表示するときに、コンボ ボックスで選択した値を設定できます。
このようなもの:
public class SizeProperties {
private static SizeProperties _instance;
private Sizes _selectedSize;
public enum Sizes{SMALL, MEDIUM, LARGE}
private SizeProperties(){
_selectedSize = Sizes.SMALL;
}
public static SizeProperties getInstance(){
if(_instance == null){
_instance = new SizeProperties();
}
return _instance;
}
public Sizes getSelectedSize(){
return _selectedSize;
}
public void setSelectedSize(Sizes size){
_selectedSize = size;
}
}
ダイアログでは、次のようにコンボボックスに入力できます。
JComboBox barField = new JComboBox();
for(SizeProperties.Sizes s : SizeProperties.Sizes.values()){
barField.addItem(s);
}
barField.setSelectedItem(SizeProperties.getInstance().getSelectedSize());
最後に、選択したサイズをシングルトン クラスに保存するには:
SizeProperties.Sizes selectedSize = (SizeProperties.Sizes) barField.getSelectedItem();
SizeProperties.getInstance().setSelectedSize(selectedSize);