我尝试了将PropertyChangeListener的属性设置为“ width”,“ Width”,“ size”和“ Size”。

PropertyChangeListener widthChangeListener = new PropertyChangeListener() {
            @Override
            public void propertyChange(PropertyChangeEvent evt) {

                //code

        }
    };

    streamsComboBox.addPropertyChangeListener("width", widthChangeListener);
    projectsComboBox.addPropertyChangeListener("width", widthChangeListener);
    vobsComboBox.addPropertyChangeListener("width", widthChangeListener);


什么都行不通-处理程序方法永远不会触发。
如何处理JComboBox的尺寸更改?财产名称从何而来?

最佳答案

尝试添加ComponentListener,例如:

combo.addComponentListener( new ComponentAdapter()
{
  public void componentResized( ComponentEvent e )
  {
    Component component = (Component)e.getSource();
    System.out.println( "Resized: " + component.getSize() );
  }
});

07-24 18:56