Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用多个信息填充JComboBox_Java_Mysql_Swing_Jcombobox - Fatal编程技术网

Java 用多个信息填充JComboBox

Java 用多个信息填充JComboBox,java,mysql,swing,jcombobox,Java,Mysql,Swing,Jcombobox,我的位置是,我必须用我的用户(5个用户)的名字填充JComboBox。当用户单击JComboBox中的名称时,我希望检索用户的UserID,而不是他们的实际名称,因为其中一些名称可能相同,并使用他们的UserID作为WHERE过滤器进行SQL查询 我将所有用户信息临时存储在一个对象中,由MySQL数据库检索 如何编写一种方法,将更多信息放入JComboBox,但只向用户显示实际名称 我希望这是有意义的,其他地方可以自由提问 提前感谢,, Jesper.创建一个User对象,该对象包含名称和用户i

我的位置是,我必须用我的用户(5个用户)的名字填充JComboBox。当用户单击JComboBox中的名称时,我希望检索用户的UserID,而不是他们的实际名称,因为其中一些名称可能相同,并使用他们的UserID作为WHERE过滤器进行SQL查询

我将所有用户信息临时存储在一个对象中,由MySQL数据库检索

如何编写一种方法,将更多信息放入JComboBox,但只向用户显示实际名称

我希望这是有意义的,其他地方可以自由提问

提前感谢,,
Jesper.

创建一个
User
对象,该对象包含名称和用户id以及适当的getter(以及setter,如果需要)。将这些添加到组合框中。使用
ListCellRenderer
定义
User
对象实际上是如何呈现的

有关更多详细信息,请参见签出。它解释了您需要遵循两个步骤来实施适当的解决方案:

  • 使用自定义渲染器
  • 使用自定义的
    KeySelectionManager
    ,这样在使用自定义渲染器时不会破坏默认的组合框功能