- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 jTable 第 8 列是美国州列。这是我的代码,用于使用适当的项目设置 jComboBox 以显示状态。
当我使用 Buffered Reader 填充 Jtable 时,下面的代码可以很好地设置组合框项目。
由于解析问题,我决定使用默认的 CSVReader 库,而不是自己重写它。我的 jTable 填充问题已经解决,但现在由于某种原因,这段代码现在不再有效。我错过了什么吗?
jComboBox(0) 是“--”。
java.lang.Object state = jTable1.getValueAt(jTable1.getSelectedRow(),8);
String g = state.toString();
if (g == "") {
jComboBox1.setSelectedIndex(0);
} else if (g == "AK") {
jComboBox1.setSelectedIndex(1);
} else if (g == "AL") {
jComboBox1.setSelectedIndex(2);
} else if (g == "AR") {
jComboBox1.setSelectedIndex(3);
}else if (g == "AZ") {
jComboBox1.setSelectedIndex(4);
}else if (g == "CA") {
jComboBox1.setSelectedIndex(5);
}else if (g == "CO") {
jComboBox1.setSelectedIndex(6);
}else if (g == "CT") {
jComboBox1.setSelectedIndex(7);
}else if (g == "DE") {
jComboBox1.setSelectedIndex(8);
}else if (g == "FL") {
jComboBox1.setSelectedIndex(9);
}else if (g == "GA") {
jComboBox1.setSelectedIndex(10);
}else if (g == "HI") {
jComboBox1.setSelectedIndex(11);
}else if (g == "IA") {
jComboBox1.setSelectedIndex(12);
}else if (g == "ID") {
jComboBox1.setSelectedIndex(13);
}else if (g == "IL") {
jComboBox1.setSelectedIndex(14);
}else if (g == "IN") {
jComboBox1.setSelectedIndex(15);
}else if (g == "KS") {
jComboBox1.setSelectedIndex(16);
}else if (g == "KY") {
jComboBox1.setSelectedIndex(17);
}else if (g == "LA") {
jComboBox1.setSelectedIndex(18);
}else if (g == "MA") {
jComboBox1.setSelectedIndex(19);
}else if (g == "MD") {
jComboBox1.setSelectedIndex(20);
}else if (g == "ME") {
jComboBox1.setSelectedIndex(21);
}else if (g == "MI") {
jComboBox1.setSelectedIndex(22);
}else if (g == "MN") {
jComboBox1.setSelectedIndex(23);
}else if (g == "MO") {
jComboBox1.setSelectedIndex(24);
}else if (g == "MS") {
jComboBox1.setSelectedIndex(25);
}else if (g == "MT") {
jComboBox1.setSelectedIndex(26);
}else if (g == "NC") {
jComboBox1.setSelectedIndex(27);
}else if (g == "ND") {
jComboBox1.setSelectedIndex(28);
}else if (g == "NE") {
jComboBox1.setSelectedIndex(29);
}else if (g == "NH") {
jComboBox1.setSelectedIndex(30);
}else if (g == "NJ") {
jComboBox1.setSelectedIndex(31);
}else if (g == "NM") {
jComboBox1.setSelectedIndex(32);
}else if (g == "NV") {
jComboBox1.setSelectedIndex(33);
}else if (g == "NY") {
jComboBox1.setSelectedIndex(34);
}else if (g == "OH") {
jComboBox1.setSelectedIndex(35);
}else if (g == "OK") {
jComboBox1.setSelectedIndex(36);
}else if (g == "OR") {
jComboBox1.setSelectedIndex(37);
}else if (g == "PA") {
jComboBox1.setSelectedIndex(38);
}else if (g == "RI") {
jComboBox1.setSelectedIndex(39);
}else if (g == "SC") {
jComboBox1.setSelectedIndex(40);
}else if (g == "SD") {
jComboBox1.setSelectedIndex(41);
}else if (g == "TN") {
jComboBox1.setSelectedIndex(42);
}else if (g == "TX") {
jComboBox1.setSelectedIndex(43);
}else if (g == "UT") {
jComboBox1.setSelectedIndex(44);
}else if (g == "VA") {
jComboBox1.setSelectedIndex(45);
}else if (g == "VT") {
jComboBox1.setSelectedIndex(46);
}else if (g == "WA") {
jComboBox1.setSelectedIndex(47);
}else if (g == "WI") {
jComboBox1.setSelectedIndex(48);
}else if (g == "WV") {
jComboBox1.setSelectedIndex(49);
}else if (g == "WY") {
jComboBox1.setSelectedIndex(50);
}
谢谢你的帮助。新山
最佳答案
不要使用 ==
比较字符串。请改用 equals(...)
或 equalsIgnoreCase(...)
方法。了解 == 检查两个对象是否相同,这不是您感兴趣的。另一方面,这些方法检查两个字符串是否具有相同顺序的相同字符,并且这才是重要的。所以而不是
if (fu == "bar") {
// do something
}
做,
if ("bar".equals(fu)) {
// do something
}
或者,
if ("bar".equalsIgnoreCase(fu)) {
// do something
}
编辑
顺便说一下,你的程序设计可以得到很大的改进。为什么要使用魔数(Magic Number)?考虑使用枚举来实现此目的。
关于java - JComboBox.setSelectedItem() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12927190/
我在使用 JComboBox 的 setSelectedItem 方法时遇到问题。它只是不起作用。这是我的代码;我的站类和分区类都还可以。所以他们不包括在内。无论我尝试什么,我都无法将项目设置为组合框
我创建了一个包含三个项目的组合框。我正在尝试按索引和值设置所选项目。 当我执行 setSelectedIndex () 时,代码运行良好。 我正在尝试按值设置所选项目。所以我尝试创建另一个具有相同值(
我在设置自定义 JComboBox 的精确值时遇到问题。如果我从以下类的 initialize() 方法调用 setSelectedItem(),它不会选择特定值。 扩展的 JComboBox 类是:
设置所选项目的原始代码是: public void setSelectedItem(Object anObject) { Object oldSelection = selectedItemR
我的 jTable 第 8 列是美国州列。这是我的代码,用于使用适当的项目设置 jComboBox 以显示状态。 当我使用 Buffered Reader 填充 Jtable 时,下面的代码可以很好地
我试图在填充组合框之后在我的 JPanel 类的构造函数中设置 JComboBox 的 setSelectedItem。 我为文本框设置了值,但我不明白为什么 setSelectedItem 似乎不起
我的代码很简单......我想当我按下按钮时将面板中所有标签的文本设置为“”(无)/正在工作/并将所有组合框设置为值1。//这不起作用。它仅将 ArrayList amout 中的第一个组合框(七个组
我有一个JComboBox JComboBox tableChoose = new JComboBox(); tableChoose.addItem("Bill"); tableChoose.addI
我在 JDialog 中有一个以 JComboBox 开头的表单: myJComboBox = new JComboBox(itemOfBox); myJpanel.add(myJComboBox);
我有一个 JTable,我将三个 JComboBox 添加到三个不同的列。现在我想为我的每一行设置所选项目。问题是,我需要每一行的 ID 才能做到这一点。所以我尝试了不同的监听器,最好的结果是使用 F
我有一个包含多个组合框的程序,每个组合框都有自己的 Action 监听器。从任一组合框中选择一项将更改一个或多个其他组合框中的项目。我遇到的问题是,为一个组合框调用 setSelectedItem()
这个问题已经有答案了: What is a NullPointerException, and how do I fix it? (12 个回答) 已关闭 7 年前。 我无法理解为什么这段代码不起作用
本文整理了Java中org.pentaho.ui.xul.components.XulMenuList.setSelectedItem()方法的一些代码示例,展示了XulMenuList.setSel
我有一个在 JComboBox 中值更改事件时调用的方法 public void actionPerformed( ActionEvent e ) { Object source = e.ge
请看下面的代码片段, String[] choices = {"Apple", "Banana", "Custard"}; JComboBox fruits = new JCombo
我是一名优秀的程序员,十分优秀!