dialog.addComponentListener(new ComponentListener() {
...
...
public void componentResized(ComponentEvent e) {
//do something
}
]);

解决方案 »

  1.   

    谢谢。成功了,虽然说屏幕会有闪烁,总比没有好!
    附上source
    this.addComponentListener(new ComponentAdapter() {
        public void componentResized(ComponentEvent e) {
            Component src = e.getComponent();
            Dimension size = src.getSize();
            if (size.getWidth() >  preferredSize.getWidth()) {
                 src.setSize((int)preferredSize.getWidth() , (int)size.getHeight());
            }
    });