添加标簽元件:
先建構一個視窗對象,使用setLayout();方法把布局設定為null,用setBounds();方法将視窗的位置坐标設定好,記得setVisibel();顯示視窗方法盡量寫在代碼的最後面一句。
準備好視窗後,就可以使用JLabel來new出一個标簽對象,像建構視窗一樣使用setBounds把标簽顯示的位置坐标設定好,再使用視窗對象通路add();方法把标簽元件添加到視窗上:
<a href="https://s1.51cto.com/oss/201710/26/670ce758f05f779942ca0463488cbe89.png" target="_blank"></a>
運作效果:
<a href="https://s5.51cto.com/oss/201710/26/9b74ee774711db0dbdf53f5adc24f709.png" target="_blank"></a>
更改字型大小:
使用setFont();方法可以改變某個元件字型的大小,和形體:
<a href="https://s2.51cto.com/oss/201710/26/a84f958141bb9d0cffa74072aeab68f5.png" target="_blank"></a>
<a href="https://s5.51cto.com/oss/201710/26/0873c1dd96970c0ae2b72b5227871963.png" target="_blank"></a>
注意:使用這個對象時,傳遞的數字越大,字型越大,數字越小,字型越小
視窗顯示在最上面:
setAlwaysOnTop();方法,寫true就是令視窗顯示
最上面,false則反之:
<a href="https://s4.51cto.com/oss/201710/26/01a87df4ee74774ad4a0bbbd0b766e5a.png" target="_blank"></a>
顯示效果:
<a href="https://s1.51cto.com/oss/201710/26/eb910090b87fab17ac1b1b6589624e70.png" target="_blank"></a>
設定之後視窗就會一直在其他視窗的上面顯示
去除視窗邊框:
setUndecorated();方法,寫true就是除去視窗的邊框,
false則反之:
<a href="https://s4.51cto.com/oss/201710/26/5bcbfaa48b60cd935013649653e3d15e.png" target="_blank"></a>
<a href="https://s1.51cto.com/oss/201710/26/d424fc43dd876ef3ee6ee1c2dd2d01d9.png" target="_blank"></a>
顯示出來就是沒有邊框的視窗
<a href="https://s3.51cto.com/oss/201710/26/31aa6978fd151d2e2f466cd6319f881b.png" target="_blank"></a>
使視窗不能伸縮:
setResizable();方法,寫false就是令視窗不能伸縮,
将尺寸定死,true則反之:
<a href="https://s5.51cto.com/oss/201710/26/7287a342ef046cac854125e5dc10b1f6.png" target="_blank"></a>
<a href="https://s2.51cto.com/oss/201710/26/834122a8d9ec944f9b2deee83e95b076.png" target="_blank"></a>
視窗的狀态:
setState();寫1就令視窗運作時就縮在工作列,寫0則無改變:
<a href="https://s3.51cto.com/oss/201710/26/3300780d522512eb77834218c98f3316.png" target="_blank"></a>
運作結果:
<a href="https://s4.51cto.com/oss/201710/26/b557d120f4db032394a99af85c882f95.png" target="_blank"></a>
設定視窗對象的預設關閉方式:
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
直接關閉虛拟機
setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
隐藏關閉,對象不會銷毀
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
銷毀對象關閉
視窗标題:
setTitle();方法,可以設定視窗的标題:
<a href="https://s5.51cto.com/oss/201710/26/3ac12be2771a55414f3e7bc5de23570d.png" target="_blank"></a>
<a href="https://s4.51cto.com/oss/201710/26/49bb6c8915fa7c6447f5bdd6019d856f.png" target="_blank"></a>
添加按鈕:
使用JButton來new出一個按鈕對象,像建構視窗一樣使用setBounds把标簽顯示的位置坐标設定好,再使用視窗對象通路add();方法把按鈕元件添加到視窗上:
<a href="https://s1.51cto.com/oss/201710/26/244c3e9097a0eb2204e8e5453aa96ad1.png" target="_blank"></a>
<a href="https://s3.51cto.com/oss/201710/26/d0381f798576362a99f328fe03dd2b8c.png" target="_blank"></a>
添加文本框:
使用JTextField來new出一個文本框對象,像建構視窗一樣使用setBounds把标簽顯示的位置坐标設定好,再使用視窗對象通路add();方法把文本框元件添加到視窗上:
<a href="https://s1.51cto.com/oss/201710/26/5ea3e5baa2be114ba2d50f86aa1e475c.png" target="_blank"></a>
<a href="https://s3.51cto.com/oss/201710/26/4b8b719416047297706ae0a0f9dc10bc.png" target="_blank"></a>
流式布局:
FlowLayout是流式布局對象,建構出這個對象再使用setLayout();方法引用這個流式布局對象就可以實作流式布局了:
<a href="https://s1.51cto.com/oss/201710/26/4d15c0683e8484920b480fa1900311b6.png" target="_blank"></a>
<a href="https://s2.51cto.com/oss/201710/26/d87e0affcc282dbc128a5e4eed02842a.png" target="_blank"></a>
<a href="https://s5.51cto.com/oss/201710/26/95c4d104d0f7bbf092a60b5191a1bc99.png" target="_blank"></a>
流式布局裡的元件會随着視窗的拉動而改變
卡片布局:
CardLayout是卡片布局對象,可以直接在setLayout();方法裡new這個卡片布局對象,就可以實作流式布局了:
<a href="https://s3.51cto.com/oss/201710/26/cfddcfbf3730dab493124757ba5d543f.png" target="_blank"></a>
<a href="https://s2.51cto.com/oss/201710/26/449783c4777af61112512c0c1625b491.png" target="_blank"></a>
卡片布局就是像卡片一樣,一張張的卡片疊在一起,按下一步就會到下一個卡片界面
本文轉自 ZeroOne01 51CTO部落格,原文連結:http://blog.51cto.com/zero01/1976469,如需轉載請自行聯系原作者