import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
public class ComboBoxSample extends Application {
public static void main(String[] args) {
launch(args);
}
final Button button = new Button ("Send");
final Label notification = new Label();
final TextField subject = new TextField("");
final TextArea text = new TextArea ("");
String address = " ";
@Override public void start(Stage stage) {
stage.setTitle("ComboBoxSample");
Scene scene = new Scene(new Group(), 500, 270);
final ComboBox emailComboBox = new ComboBox();
emailComboBox.getItems().addAll(
"[email protected]",
"[email protected]",
"[email protected]",
"[email protected]",
"[email protected]"
);
final ComboBox priorityComboBox = new ComboBox();
priorityComboBox.getItems().addAll(
"Highest",
"High",
"Normal",
"Low",
"Lowest"
);
priorityComboBox.setValue("Normal");
GridPane grid = new GridPane();
grid.setVgap(4);
grid.setHgap(10);
grid.setPadding(new Insets(5, 5, 5, 5));
grid.add(new Label("To: "), 0, 0);
grid.add(emailComboBox, 1, 0);
grid.add(new Label("Priority: "), 2, 0);
grid.add(priorityComboBox, 3, 0);
grid.add(new Label("Subject: "), 0, 1);
grid.add(subject, 1, 1, 3, 1);
grid.add(text, 0, 2, 4, 1);
grid.add(button, 0, 3);
grid.add (notification, 1, 3, 3, 1);
Group root = (Group)scene.getRoot();
root.getChildren().add(grid);
stage.setScene(scene);
stage.show();
}
}
出典:http://docs.oracle.com/javase/8/javafx/user-interface-tutorial/combo-box.htm#BABJCCIBのJavaFXで編集可能なコンボボックスは:JARファイルでは動作しません、NetBeansの中で作品
私は、NetBeansからそれを実行すると、このコードは正常に動作します。ただし、JARファイル(CMDまたはフォルダビューの両方)からJARファイルを実行すると、ComboBoxに問題があります。プログラムは、ComboBoxに入力したすべてのものを無視します。編集前にボックスが空の場合は、「受信者を選択していません!」と表示されます。 リストの受信者が選択されて編集された場合、プログラムは編集を無視して受信者に送信します。
私は自分のコードで同じ問題を抱えていました。そのため、私はOracleによって書かれたこのコードをテストしました。私はNetBeansの設定に何か間違っていなければならないと思っていますが、それについて何をすべきかわかりません。
システムJavaのバージョンとNetBeansの使用するバージョンが異なる可能性はありますか? 'System.getProperty(" java.version ")'を印刷して、別の結果が得られるかどうか確認してください。 – Itai
NetBeansバージョン:1.8.0_45 システムバージョン:1.8.0_60 – Jery33