Tag: popupmenu

JComboBox弹出菜单没有出现

我在JPanel中有一个JComboBox(它本身嵌套在其他一些JPanel中)。 它包含了一个枚举成员。 我遇到了一个问题,当我单击展开按钮时,弹出菜单没有出现。 这是我到目前为止收集的信息: 1)首次单击展开按钮不执行任何操作。 第二次单击会突出显示该框的内容,但仍不会显示弹出窗口。 2)一旦我点击按钮并给它焦点,上/下击键就可以正确地循环输入。 3)我尝试添加PopupMenuListener来打印事件,事件以无法解释的方式触发: mouse down: popupMenuWillBecomeVisible fires mouse up: nothing mouse down: popupMenuWillBecomeInvisible fires mouse up: nothing 这是我对JComboBox的初始化代码: comboBox = new JComboBox(); comboBox.setPreferredSize(new Dimension(175, 30)); comboBox.setMaximumSize(new Dimension(175, 30)); comboBox.setAlignmentX(0.5f); comboBox.addItem(Enum.Value1); … parentPanel = new JPanel(); parentPanel.setLayout(new BoxLayout(parentPanel, BoxLayout.X_AXIS)); parentPanel.setMaximumSize(new Dimension(37267, 50)); … add some other stuff to parentPanel … parentPanel.add(comboBox); […]

PopupMenu项目图标

我的应用有问题。 我需要显示一个PopupMenu ,我需要此菜单中的每个项目都包含文本和图像。 图像应显示在文本的左侧。 但它没有显示,任何建议如何实现它? 我的代码到目前为止; public void showMenu(Button button) { PopupMenu popupMenu = new PopupMenu(this, button); popupMenu.getMenuInflater().inflate(R.menu.config_menu, popupMenu.getMenu()); popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem menuItem) { switch (menuItem.getItemId()) { 我的选项菜单: 这就是我所看到的(添加红色框以显示图像应该去的地方);

如何将Android PopupMenu的背景设置为白色

我正在努力设置PopupMenu的背景。 谷歌搜索了一段时间后,我发现它应该转到应用主题。 更具体地说,这应该在style.xml中定义。 MY_STYLE 但是,我并没有真正弄清楚我应该使用哪种风格,因为我认为它有一个内置的风格。 我尝试使用@android:style/Widget.Holo.PopupMenu和@android:style/Widget.Holo.Light.PopupMenu ,但没有运气。

设置JComboBox PopupMenu的大小

我正在编写一个扩展JComboBox的自定义组件。 我的问题是,如果我要添加或删除项目,PopupMenu将不会实现其大小。 所以列表中有2个项目,但是如果我在PopupMenu中有2个“空”项目之前有4个项目。 我发现的唯一解决方法是做(在JIntelligentComboBox.java第213行) this.setPopupVisible(false); this.setPopupVisible(true); 但结果将是一个闪烁的PopupMenu 🙁 那么我还能做些什么来刷新/重绘PopupMenu而不会闪烁? 用于测试: 组件和一点测试程序 要产生我的问题,你可以: 输入“e” 按“返回” 输入“m” 提前致谢 编辑:我的目标是一个ComboBox,其行为类似于Firefox或Chrome中的地址栏,我想显示包含类型字符的PopupMenu的所有项目。 cboxtester.java: import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; import javax.swing.DefaultComboBoxModel; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JList; import javax.swing.plaf.basic.BasicComboBoxRenderer; public class cboxtester extends JFrame { private DefaultComboBoxModel dcm = new DefaultComboBoxModel(new Object[][] {new Object[] {“Mittagessen”, “”, 0}, new Object[] {“Essen”, […]