Swing-setMaximumSize()用法-入門

與setMinimumSize()一同討論。顧名思義,這兩個函數用於設置窗體的最大、最小值。然而測試發現,setMaximumSize()直接做用於JFrame時,沒法實現其預約功能,setMinimumSize()功能正常。java

測試代碼以下:函數

import java.awt.Dimension;
import javax.swing.JFrame;

/*
 * 2015-06-17
 */
public class SetMaximumSizeDemo extends JFrame {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        SetMaximumSizeDemo setMaximumSizeDemo = new SetMaximumSizeDemo();
        setMaximumSizeDemo.setMaximumSize(new Dimension(300, 300));
        setMaximumSizeDemo.setMinimumSize(new Dimension(100, 100));
        setMaximumSizeDemo.setBounds(100, 100, 200, 100);
        setMaximumSizeDemo.setVisible(true);
    }
}

運行效果圖以下:測試

圖1 默認尺寸200x100google

圖2 最小尺寸100x100spa

圖3 放大尺寸,超過300x300code

google發現,setMaximumSize()確實是bug,參見:JDK-6464548 : Reopen 6383434: Frame.setMaximumSize() doesn't workblog

固然,也有人認爲這兩個函數都不可靠Java swing setMaximumSize not working事件

所以,筆者認爲,若是確實想要對窗體或控件的最大、最小進行控制,須要在窗體的事件響應中來實現。get

相關文章
相關標籤/搜索