Java圖形界面之JFrame,JLabel,JButton詳解
一、JFrame
package Demo03; import javax.swing.*; import java.awt.*; public class JFrame01 { public static void main(String[] args) { JFrame f = new JFrame("第一個Swing窗體"); Dimension d = new Dimension(); // 創(chuàng)建一個Dimension 對象,通過設(shè)置這個對象去達到改變Frame窗體大小的目的 d.setSize(230,80); // set方法設(shè)置d對象大小 f.setSize(d); // 這里就是通過設(shè)置JFrame的大小為Dimension的大小的方法,去達到改變大小的目的 f.setBackground(Color.WHITE); // 設(shè)置顏色 Point p = new Point(300,200); // 設(shè)置坐標點,原理一樣 f.setLocation(p); // 原理一樣,因為設(shè)置的點是窗體的左上角,所以這么設(shè)置即可 f.setVisible(true); // 讓窗體顯示 /* 窗體首先需要能夠顯示出來 //f.setVisible(true); 以上便能夠使窗體顯示出來 然后是窗體的 大小以及位置,也就是約束 //f.setSize() 和 f.setLocation() 可以改變其大小和位置,也就是建立約束 其他的設(shè)置如底色等,如果缺省,會是白色 //f.setBackground(Color.WHITE); */ } }
代碼截圖:
運行結(jié)果:
照著代碼敲一遍,然后注釋掉一部分代碼,查看報錯提示或者運行結(jié)果
從這個角度去學習也是可以的
二、JLabel
package Demo03; import javax.swing.*; import java.awt.*; public class JFrame02 { public static void main(String args[]){ JFrame frame = new JFrame("Welcome to Libra's learning space."); // 實例化窗口對象,這里主要是設(shè)置顯示文字內(nèi)容 JLabel lab = new JLabel("It is inside of learning space.",JLabel.CENTER); // 實例化標簽文本,這里主要是設(shè)置顯示文字內(nèi)容 frame.add(lab); // 將標簽添加進窗口 frame.setSize(500,300); // 設(shè)置窗口大小 frame.setBackground(Color.WHITE); // 設(shè)置窗口底色 frame.setLocation(300,200); // 設(shè)置窗口位置 frame.setVisible(true); // 設(shè)置窗口顯示 /* 其他的組件需要通過添加才能夠在窗口上 //frame.add(lab); 這里傳入了兩個參數(shù),一個是文本內(nèi)容,一個是文本樣式,其中選擇了居中,可以通過拖動窗口來檢查是否居中 //JLabel lab = new JLabel("It is inside of learning space.",JLabel.CENTER); 在java中,所有的東西都是對象,所以都需要先實例化,也就是new一個出來,然后通過設(shè)置這個實例化后的對象進行使用 其他的與上一張基本一致,這里不再贅述 */ } }
代碼截圖:
運行結(jié)果:
三、JButton
package Demo03; import javax.swing.*; import java.awt.*; public class JFrame03 { public static void main(String args[]){ JFrame frame = new JFrame("Welcome to Libra's learning space."); // 實例化窗口對象,這里主要是設(shè)置顯示文字內(nèi)容 JButton but = new JButton("It is Button."); // 實例化按鈕 JLabel lab = new JLabel("This is Libra's learning space.",JLabel.CENTER); // 實例化標簽對象 frame.add(but); // 將按鈕添加進窗口 frame.add(lab); // 將標簽添加進窗口 frame.setSize(500,300); // 設(shè)置窗口大小 frame.setBackground(Color.WHITE); // 設(shè)置窗口底色 frame.setLocation(300,200); // 設(shè)置窗口位置 frame.setVisible(true); // 設(shè)置窗口顯示 but.setBounds(0,0,100,50); // 設(shè)置按鈕大小及位置 lab.setBounds(0,0,50,50); /* 實例化標簽組件是為了不讓按鈕默認樣式生效,當只有一個按鈕組件的時候,默認填滿整個窗口,讀者可以自己手動嘗試一下,復(fù)制了代碼后將標簽相關(guān)的代碼注釋掉 四個值都為int類型,分別是位置和大小 // but.setBounds(x,y,width,height); 按鈕的顯示文本可以像示例中這樣實例化時設(shè)置,也可以稍后設(shè)置 下面第一行和后兩行的效果是一樣的,讀者可以手動嘗試一下 // JButton but = new JButton("It is Button."); // JButton but = new JButton(); // but.setLabel("It is Button."); 其他的與前幾張相差不大,這里不做贅述 */ } }
代碼截圖:
運行結(jié)果:
四、小結(jié)
想要達到圖形化界面,那目的就是展示一些什么,例如圖片,文字等。
而這些不能憑空產(chǎn)生,需要有一個能夠裝載其的容器,也就是窗口,接下來需要展示的內(nèi)容都會在這個窗口上,窗口里。
窗口可以顯示出來,但是計算機不知道會是什么樣的,所以需要我們自己去設(shè)定其樣式。
樣式的設(shè)定可以缺省,一般來講缺省了不會報錯,因為其只是有一個默認值,所以缺省了會設(shè)定為默認值,例如窗口底色,大小,位置
窗口的形狀等都可以自己去設(shè)定,具體的可以查閱官方文檔主動學習
JLabel中不止可以設(shè)置文字,還可以設(shè)置圖片,將圖像數(shù)據(jù)以byte數(shù)組的形式設(shè)置上去
那既然JLabel可以,JButton上也是可以的,具體的可以查閱官方文檔了解
到此這篇關(guān)于Java圖形界面之JFrame、JLabel、JButton詳解的文章就介紹到這了,更多相關(guān)Java JFrame、JLabel、JButton內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于resty?security的Api權(quán)限控制與事務(wù)支持
這篇文章主要為大家介紹了基于resty?security的Api權(quán)限控制與事務(wù)支持讓數(shù)據(jù)操作處于事務(wù)控制下,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-03-03基于多網(wǎng)卡環(huán)境下Eureka服務(wù)注冊IP的選擇問題
這篇文章主要介紹了基于多網(wǎng)卡環(huán)境下Eureka服務(wù)注冊IP的選擇問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03Spring Framework遠程代碼執(zhí)行漏洞分析(最新漏洞)
Spring Framework 是一個開源應(yīng)用框架,旨在降低應(yīng)用程序開發(fā)的復(fù)雜度,它具有分層體系結(jié)構(gòu),允許用戶選擇組件,同時還為 J2EE 應(yīng)用程序開發(fā)提供了一個有凝聚力的框架,對Spring遠程代碼執(zhí)行漏洞相關(guān)知識感興趣的朋友一起看看吧2022-04-04Java中如何將list轉(zhuǎn)為樹形結(jié)構(gòu)
這篇文章主要介紹了Java中如何將list轉(zhuǎn)為樹形結(jié)構(gòu),本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-09-09SpringBoot?+DynamicDataSource切換多數(shù)據(jù)源的全過程
這篇文章主要介紹了SpringBoot?+DynamicDataSource切換多數(shù)據(jù)源的全過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01SpringAop @Aspect織入不生效,不執(zhí)行前置增強織入@Before方式
這篇文章主要介紹了SpringAop @Aspect織入不生效,不執(zhí)行前置增強織入@Before方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12Spring Boot報錯:No session repository could be auto-configured
這篇文章主要給大家介紹了關(guān)于Spring Boot報錯:No session repository could be auto-configured, check your configuration的解決方法,文中給出了詳細的解決方法,對遇到這個問題的朋友們具有一定參考價值,需要的朋友下面來一起看看吧。2017-07-07