鼠标滚轮调整JPanel和所有内部组件的大小

时间:2012-08-15 08:14:09

标签: java swing

假设我内部有JPanelpanelA和两个JButtonsbutton1button2)。我想将MouseWheelListener添加到JPanel,因此当我创建一个事件时,所有组件都会调整大小(变大或变小)。我想出了这段代码:

for (Component comp : panelA.this.getComponents())
{
    if (comp instanceof JButton)
    {
        comp.setPreferredSize(new Dimension(
            (int) (PREFERRED_WIDTH * SCALE_WIDTH),
            (int) (PREFERRED_HEIGHT * SCALE_HEIGHT)));
    }
}

SCALE_HEIGHT&的值当我举办活动时,SCALE_WIDTH正在发生变化。

我的问题是:它好吗?我应该为所有内部组件设置首选大小还是制作其他内容?

1 个答案:

答案 0 :(得分:3)

当我突然发现这是JXLayer(或Java {7 {3}下)的经典案例时,我正在捣乱我那可怜的老大脑试图去做这件事。

有一些非常好的例子,但它们似乎已经消失在以太中