Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.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_Swing_Jcombobox - Fatal编程技术网

Java 更改JComboBox中滚动条的大小

Java 更改JComboBox中滚动条的大小,java,swing,jcombobox,Java,Swing,Jcombobox,有人知道如何手动更改jComboBox中的滚动条大小吗?我试过很多东西,但都不管用 好吧,我想出来了。您可以实现PopUpMenuListener并使用: public void popupMenuWillBecomeVisible(PopupMenuEvent e) { JComboBox comboBox = (JComboBox) e.getSource(); Object popup = comboBox.getUI().getAccessibleCh

有人知道如何手动更改jComboBox中的滚动条大小吗?我试过很多东西,但都不管用

好吧,我想出来了。您可以实现PopUpMenuListener并使用:

   public void popupMenuWillBecomeVisible(PopupMenuEvent e)
   {
      JComboBox comboBox = (JComboBox) e.getSource();
      Object popup = comboBox.getUI().getAccessibleChild(comboBox, 0);
      Component c = ((Container) popup).getComponent(0);
      if (c instanceof JScrollPane)
      {
         JScrollPane scrollpane = (JScrollPane) c;
         JScrollBar scrollBar = scrollpane.getVerticalScrollBar();
         Dimension scrollBarDim = new Dimension(SCROLLBAR_WIDTH, scrollBar
               .getPreferredSize().height);
         scrollBar.setPreferredSize(scrollBarDim);
      }
   }