java Swing組件setBounds()簡單用法實例分析
本文實例講述了java Swing組件setBounds()簡單用法。分享給大家供大家參考,具體如下:
先看API:
public void setBounds(Rectangle r)
移動組件并調整其大小,使其符合新的有界矩形 r。由 r.x 和 r.y 指定組件的新位置,由 r.width 和 r.height 指定組件的新大小
參數(shù): r - 此組件的新的有界矩形
從API來看,該方法的作用相當于setLocation()
與 setSize()
的總和。在實際使用時,需將容器的layout設置為null,因為使用布局管理器時,控件的位置與尺寸是由布局管理器來分配的。需要注意的是,這時必須手動指定容器的尺寸,因為空的布局管理器會將容器自身的PreferredSize清零,導致容器無法在GUI上顯示。因此,如果容器在上級容器中使用布局管理器排列,那么需使用setPreferredSize()
,如果容器在上級容器中仍然手動排列,那么對容器使用setBounds()
即可。
下面是測試demo:
package awtDemo; import java.awt.Dimension; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; public class setBoundsDemo { public static void main(String[] args) { // TODO Auto-generated method stub //設置panel的layout以及sieze JPanel jpanel = new JPanel(); System.out.println("default PreferredSize is " + jpanel.getPreferredSize()); System.out.println("default Size is " + jpanel.getSize()); jpanel.setLayout(null); System.out.println("In null layout, the PreferredSize is " + jpanel.getPreferredSize()); System.out.println("In null layout, the Size is " + jpanel.getSize()); jpanel.setPreferredSize(new Dimension(400, 400)); //添加按鈕 JButton button11 = new JButton("setBounds"); JButton button12 = new JButton("setLocationAndSetSize"); button11.setBounds(20, 20, 100, 100); button12.setLocation(250, 250); button12.setSize(100, 100); jpanel.add(button11); jpanel.add(button12); // 設置窗體屬性 JFrame frame = new JFrame("setBoundsDemo"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(jpanel); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); } }
運行效果如下:
程序輸出如下:
default PreferredSize is java.awt.Dimension[width=10,height=10] default Size is java.awt.Dimension[width=0,height=0] In null layout, the PreferredSize is java.awt.Dimension[width=0,height=0] In null layout, the Size is java.awt.Dimension[width=0,height=0]
更多關于java相關內容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結構與算法教程》、《Java字符與字符串操作技巧總結》、《Java操作DOM節(jié)點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設計有所幫助。
相關文章
詳解Java Bellman-Ford算法原理及實現(xiàn)
Bellman-Ford算法與Dijkstra算法類似,都是以松弛操作作為基礎,Bellman-Ford算法是對所有邊都進行松弛操作,本文將詳解Bellman-Ford算法原理及實現(xiàn),感興趣的可以了解一下2022-07-07SpringBoot整合Redis實現(xiàn)登錄失敗鎖定功能(實例詳解)
本文我們已經(jīng)探討如何利用Redis來實現(xiàn)鎖定賬戶的安全措施,以及通過SpringBoot整合Redis實現(xiàn)了這一功能,感興趣的朋友跟隨小編一起學習下吧2024-02-02SpringBoot2.0整合Shiro框架實現(xiàn)用戶權限管理的示例
這篇文章主要介紹了SpringBoot2.0整合Shiro框架實現(xiàn)用戶權限管理的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-08-08SpringBoot常見get/post請求參數(shù)處理、參數(shù)注解校驗及參數(shù)自定義注解校驗詳解
這篇文章主要給大家介紹了關于SpringBoot常見get/post請求參數(shù)處理、參數(shù)注解校驗及參數(shù)自定義注解校驗的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-03-03