2013-06-27 4 views
0

Я использую int TxtAge = Integer.parseInt(tfAge.getText().trim()); , чтобы получить значение из моего текстового поля и выполнить поиск в базе данных.String Tokenizer.nextElement для JComboBox

Затем я использую Integer age = Integer.parseInt(stringTokenizer.nextElement().toString());, чтобы перейти к следующим атрибутам в моей базе данных.

У меня нет проблем с использованием этих кодов для текстового поля, но когда я использую JComboBox, результат не будет отображаться. Как использовать StringTokenizer.nextElement() для JComboBox? То же самое с TextField?

String sex=(String) stringTokenizer.nextElement(); 

Я попробовал этот код, но до сих пор не удалось :(

+0

Пожалуйста, взгляните на новое форматирование, нажав кнопку редактирования. Обратитесь к синтаксису разметки на meta.stackoverflow.com для получения дополнительной информации. Не забудьте добавить тег для вашего языка программирования. И добро пожаловать в stackoverflow, конечно :) –

ответ

0

Вы, кажется, опустили соответствующие части вашего кода, то есть, как вы обработки установки/получения элементов в JComboBox. Вы читали ли эти . значения из базы данных, файл или иметь их жёстко не имеет никакого отношения к вопросу

так вы спросите, является ли это то же самое, как с JTextField, я могу по крайней мере ответить на этот вопрос, это не то же самое. Вопрос указывает, что вы совершенно новичок в Swing. Ульд, вероятно, выигрывает от работы через базовый учебник Swing, просто чтобы понять, как работать с этими базовыми элементами GUI. Для JComboBox, проверьте, что Oracles принадлежит How to Use Combo Boxes.

В любом случае при работе с JComboBox вам необходимо сначала заполнить его значениями, которые могут выбрать пользователи, и установить текущее выбранное значение. Получение текущего выбранного значения - это просто вызов метода.

Кроме того, у вас есть возможность сделать редактирование combobox. Это означает, что пользователь может редактировать текст в поле со списком до того, что не было предварительно заполнено. По умолчанию эта опция отключена.

Я приведу несколько примеров.

Initialize:

JComboBox sexComboBox = new JComboBox(); 
sexComboBox.addItem("Not selected"); 
sexComboBox.addItem("Male"); 
sexComboBox.addItem("Female"); 
sexComboBox.addItem("Do not want to disclose"); 

По умолчанию, вы добавили первый элемент выбран. Для того, чтобы выбрать другую, вам нужно добавить одну из следующих строк:

sexComboBox.setSelectedIndex(1); // zero-based index, "Male" is selected item 
sexComboBox.setSelectedItem("Female"); // sets the selected item to "Female" 

Чтобы включить пользователь редактировать содержимое в то, что было не предопределенным, просто добавьте строку:

sexComboBox.setEditable(true); 

Чтобы получить текущее выбранное значение:

String selectedItem = (String) sexComboBox.getSelectedItem(); 
+0

Я пробовал ваш код, но он не работает. Я все еще не могу извлечь значение из JComboBox :( – user2529065

+0

У меня все еще была проблема с этим кодом String sex = (String) stringTokenizer.nextElement(); – user2529065

+0

Это не так странно, поскольку stringTokenizer не имеет ничего общего с полем со списком . Чтобы получить выбранное значение в поле со списком, вам нужно сделать то, что я показал в последнем примере кода: 'String selectedItem = (String) sexComboBox.getSelectedItem(); ' – Steinar