2013-06-27 36 views
0

我正在使用 int TxtAge = Integer.parseInt(tfAge.getText().trim()); 从我的文本字段中获取值并在数据库中进行搜索。JComboBox的字符串Tokenizer.nextElement

然后,我使用Integer age = Integer.parseInt(stringTokenizer.nextElement().toString());去我的数据库中的下一个属性。

我没有问题使用这些代码的文本框,但是当我使用JComboBox时,结果将不会显示。如何使用​​的JComboBox?与TextField是一样的吗?

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

我想这个代码,但还是失败了:(

+0

请点击编辑按钮查看新的格式。在meta.stackoverflow.com上查找markdown语法以获取更多信息。请不要忘记为您的编程语言添加标签。当然,欢迎来到stackoverflow :) –

回答

0

你似乎已经离开了您的代码,例如,你是如何处理设置/获取在JComboBox项目的相关部分。无论你阅读这些从数据库,文件中的值,或让他们硬编码是无关的问题

你既然问是否是同一个JTextField,我至少可以回答这个问题,它是相同。这个问题表明你对Swing来说很新,你好uld可能会从基本的Swing教程中获益,只是为了掌握如何使用这些基本的GUI元素。对于JComboBox,请查看Oracles自己的How to Use Combo Boxes

总之,在使用JComboBox时,您需要首先使用用户可以选择的值填充值,然后设置当前选定的值。检索当前选定的值只是一个简单的方法调用。

此外,您可以编辑组合框。这意味着用户可以将组合框中的文本编辑为未预先填充的内容。默认情况下,该选项关闭。

我会举几个例子。

初始化:

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

相关问题