我無法獲取我的字符串值以打印到我構建的GUI ComboBox中。實質上,每當我將我的cbGame
組合框的值分配給JavaFX程序時,當我嘗試啓動GUI時,它會給我一個非法參數異常。完整的代碼在我的GitHub上:https://github.com/jparr721/Blue-Box2 我需要幫助的代碼如下。JavaFX在ComboBox中沒有存儲字符串值
控制器類:
public class RentGameDialogController extends RentalStoreGUIController implements Initializable{
@FXML private TextField nameField, rentedOn, dueBack;
String name;
Date dateRentedOn, dateDue;
GregorianCalendar rented, due;
@FXML private ObservableList<String> cbGameOptions;
@FXML private ComboBox<String> cbGame;
@FXML ComboBox<PlayerType> cbConsole;
@FXML Button cancel, addToCart;
int counter = 0;
private Stage currentStage;
@Override
public void initialize(URL location, ResourceBundle resources) {
cbGameOptions = FXCollections.observableArrayList();
cbGameOptions.add("The Witcher 3");
cbGameOptions.add("Call of Duty: Advanced Warfare");
cbGameOptions.add("Call of Duty: Infinite Warfare");
cbGameOptions.add("The Elder Scrolls IV: Skyrim");
cbGame.setItems(cbGameOptions);
}
public void getName(){
name = nameField.getText();
try {
String[] firstLast = name.split(" ");
String firstName = firstLast[0];
String lastName = firstLast[1];
} catch (Exception e){
e.printStackTrace();
}
}
public void getRentedOn() throws ParseException {
DateFormat format = new SimpleDateFormat("MM/dd/yy");
dateRentedOn = format.parse(rentedOn.getText());
rented.setTime(dateRentedOn);
}
public void getDueBack() throws ParseException {
DateFormat format = new SimpleDateFormat("MM/dd/yy");
dateDue = format.parse(dueBack.getText());
due.setTime(dateDue);
}
@FXML
public void handleCancelButtonAction (ActionEvent event) {
currentStage = (Stage) cancel.getScene().getWindow();
currentStage.close();
}
@FXML
public void addToCartButton (ActionEvent event) {
currentStage = (Stage) cancel.getScene().getWindow();
currentStage.close();
}}
這裏就是我給你cbGame到ComboBox JavaFX應用程序。
請發表您的實際問題FXML。發佈一個沒有足夠細節的問題來回答它簡單地鼓勵人們猜測答案。 –
「它給了我一個非法的參數異常」編輯你的問題,幷包含IllegalArgumentException的完整堆棧跟蹤。它告訴我們(和你)究竟是哪一行代碼引起了問題。 – VGR