1

我的 Swing GUI 中有一个 jComboBox,用于填充我的 SQL 数据库中的值。

一切看起来都很好,但是当我运行应用程序时,我的组合框出现了,例如 [Black ...],旁边有 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 个点。

4

1 回答 1

4

您可能没有在 GUI 上提供足够的物理空间来显示数据。为您的组合框腾出更多水平空间(即,使其更长)。

更新

根据上面的图片,我给了它相当长的宽度,但我无法删除 3 个点。

查看您添加的屏幕截图,我的猜测是这是一个数据问题。一些 jdbc 驱动程序会为您提供与列长度相同的空格填充字符串,即使数据要短得多。例如,定义为 char(10) 且其中包含值“A”的列可能会从您的查询中返回为

“一个 ”
. 如果是这种情况,请在将字符串添加到组合之前修剪字符串:

String depth = rs.getString("depth").trim();

此外,根据 mKorbel 的建议,您可以为您的组合设置原型:

// if you're using strings, and the max length will be 10
comboDepth.setPrototypeDisplayValue("1234567890");

请记住,如果空格导致数据比您预期的要长,填充空格(如您的屏幕截图所示)仍然是一个问题。

于 2013-01-08T21:16:05.750 回答