0
A
回答
3
你可以實現的ComponentListener,並有這樣的事情
@Override
public void componentResized(ComponentEvent arg0) {
Rectangle b = arg0.getComponent().getBounds();
arg0.getComponent().setBounds(b.x, b.y, b.width, b.width);
}
,並用它爲您的JFrame。唯一的事情是,使用JFrame,它不會引發這個事件,直到鼠標被釋放。如果您想在拖動鼠標時看到所做的更改,則必須使用JPanel,並使用此ComponentListener代替JFrame,並使用該面板填充框架。
0
你可以嘗試這樣的事:
public void componentResized(ComponentEvent e) {
System.out.println("i have changed size applying aspect ratio now.");
setSize(getWidth(), getWidth());
repaint();
}
這是一個小直觀的你因爲它的大小調整組件大小後。