我在Swing GUI中有一个jComboBox,从我的SQL数据库填充值。
一切看起来都不错但是当我运行应用程序时,我的组合框出现了例如[黑色...],侧面有3个点。
请建议我如何删除3个点。
编辑: 为我的jComboBox添加了代码及其图像
public void fillTankDepth()
{
String fill = "Select * from swdepth";
try{
ps = conn.prepareStatement(fill);
rs = ps.executeQuery();
while(rs.next()){
String depth = rs.getString("depth");
comboDepth.addItem(depth);
}
}
catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
根据上面的图片,我给它提供了相当长的宽度,但是我无法移除3个点。
答案 0 :(得分:4)
您可能无法在GUI上提供足够的物理空间来显示数据。为你的组合框提供更多的水平空间(即延长它)。
<强>更新强>
根据上面的图片,我给它提供了相当长的宽度,但是我无法移除3个点。
查看您添加的屏幕截图,我的猜测是这是一个数据问题。一些jdbc驱动程序会为空格填充字符串提供列的长度,即使数据更短。例如,定义为char(10)且其中包含值“A”的列可能会从您的查询中返回
"A "。如果是这种情况,请在将字符串添加到组合之前修剪字符串:
String depth = rs.getString("depth").trim();
另外,正如mKorbel建议的那样,您可以为您的组合设置原型:
// if you're using strings, and the max length will be 10
comboDepth.setPrototypeDisplayValue("1234567890");
请注意,填充空格(如截图所示)如果空格导致数据长于您期望的数据,则仍然会出现问题。