Swing 有类似 HTML <select> 标签的组件吗?

问题描述 投票:0回答:3

我想在 JMenuItem 中显示一些信息。数据格式是这样的:

1-1|Menu Name1

1-2|Menu Name2

我的问题是,当我创建 JMenuItem 时,它显示整个键值对。我想知道 Swing 中是否有类似 HTML 的行为

<SELECT>
 <OPTION value="1-1">Menu Name1</OPTION>
 <OPTION value="1-2">Menu Name2</OPTION>
</SELECT>

...用户永远看不到键,只能看到值。

我不熟悉 Swing,所以如果有人知道类似的行为,比如使用 JMenuItems 样式的 HTML,请分享。

提前致谢。

java swing
3个回答
3
投票

你是说 JComboBox 吗?

参考:


2
投票

如果我理解正确的话,您需要为

JMenuItem
设置不同的可访问属性,以便当用户单击菜单项时,您可以读取相应的值,该值可用于其他目的。

为此,请尝试

setActionCommand
API;通过这种方式,您可以将任何字符串与菜单项相关联,并且在事件处理代码中,您可以对生成事件的源对象执行 getActionCommand。

注意: 您的接受率为 0%。这意味着您不接受您发布的问题的任何答案。不要指望有太多人回答你的问题。


0
投票

如果将键值对包装在单个对象中,则可以将这些对象传递到 JMenu。为了确保只有部分对象信息(在本例中为值)显示在此菜单中,您可能想要“破解” JMenuItem 的呈现(通过派生您自己的类并使用 PaintComponent() ,我猜),或者只是更改传递对象的 toString() 方法(如果可行,这可能会导致一些问题,具体取决于这些对象的进一步使用)以仅返回应该显示的值。

© www.soinside.com 2019 - 2024. All rights reserved.