を表すように、私はクラスShowBytes
のバイトにコンボボックスの項目をリンクすることができます任意の方法はあります文字列を返す方法はtoString
です。必要であれば、そのクラスから価値を得ることができます。
ObservableList<NamedByteValue> bytes = FXCollections.observableArrayList();
// just filling it with some sample values here
for (char c = 'A'; c <= 'Z'; c++) {
bytes.add(new NamedByteValue((byte) (c - 'A'), Character.toString(c)));
}
ComboBox<NamedByteValue> comboBox = new ComboBox<>(bytes);
comboBox.valueProperty().addListener((observable, oldValue, newValue) -> System.out.println(newValue.getValue()));
public static class NamedByteValue {
private final byte value;
private final String name;
public NamedByteValue(byte value, String name) {
this.value = value;
this.name = name;
}
public byte getValue() {
return value;
}
public String getName() {
return name;
}
@Override
public String toString() {
return name;
}
}
あなたは何をしようとしていますか? 'ComboBox'に変数名を表示しますが、アイテムタイプを' Byte'にしておきますか?それらの価値はユニークですか?なぜあなたはこれをしたいのですか? 'Byte'をアイテムタイプとして使用する利点は、単にアイテムを' byte'に変換するのではなく、使用している場合です。 – fabian
バイトは、開発ボードとのシリアル通信を通じてデバイスに送信されます。バイトは、デバイスによってコマンドとして解釈されます。クラスからバイトを返すgetbytes(String Bytename)という関数を持つことは可能ですか? – tashtoons
そのクラスを変更してより適切なデータ構造にデータを置くことはできませんか? – fabian