Java GUI進(jìn)階之流式布局管理器FlowLayout專項精講
Java GUI
GUI的全稱是Graphical User Interface,即圖形用戶界面,是應(yīng)用程序提供給用戶操作的圖形界面,包括窗口,菜單,按鈕,工具欄和其他各種圖形界面元素。
AWT概述
AWT是用于創(chuàng)建圖形用戶界面的一個工具包,提供了一些用于實現(xiàn)圖形界面的組件,,在JDK中針對每個組件都提供了對應(yīng)的Java類,這些類都位于Java.awt包。
AWT中的繼承關(guān)系
1、Windows
Windows中有兩個子類,F(xiàn)rame類和Dialog類,F(xiàn)rame類用于創(chuàng)建一個具有標(biāo)題的框架窗口,作為程序的主界面,Dialog類用于創(chuàng)建一個對話框,實現(xiàn)與用戶的信息交互。
2、Panel
Panel是一個容器,不能單獨存在,只能存在于Windows及其子類中,一個Panel對象代表了一個長方形的區(qū)域,在這個區(qū)域中可以容納其他的組件,
package AWT; import java.awt.*; public class GeZi { public static void main(String[] args) { Frame f=new Frame("我的世界!"); //設(shè)置窗體的寬和高 f.setSize(600,300); //設(shè)置窗體在屏幕中所處的位置(參考是左上角坐標(biāo)) f.setLocation(600,200); f.setVisible(true); } }
布局管器
組件在容器中的位置和尺寸是由布局管理器來決定的。在java.awt包中提供了5種布局管理器,分別是FlowLayout(流式布局管理器),BorderLayout(邊界布局管理器),GirdLayout(網(wǎng)格布局管理器),GirdBagLayout(網(wǎng)格包布局管理器),CardLayout(卡片布局管理器),每個容器在創(chuàng)建時都會默認(rèn)使用一種布局管理器,在程序中可以通過調(diào)用容器對象的setLayout()方法設(shè)置布局管理器,通過布局管理器來自動進(jìn)行組建的布局管理。
FlowLayout(流式布局管理器)
在這種布局方式下,容器會將組件按照添加順序從左向右放置。當(dāng)達(dá)到容器的邊界時,會自動將組件放到下一行的開始位置,可以將組件設(shè)置成左對齊,居中對齊或右對齊,F(xiàn)lowLayout有三個構(gòu)造方法。
FlowLayout()//組件默認(rèn)居中對齊,水平,垂直間距離為5個單位 FlowLayout(int align)//指定組件相對于容器的對齊方式,水平,垂直間距默認(rèn)5個單位 FlowLayout(int align,int hgap,int vgap)//指定組件的對齊方式和水平,垂直間距
package AWT; import java.awt.*; public class LuiSi { public static void main(String[] args) { final Frame f=new Frame("FlowLayout"); //設(shè)置布局管理器為FlowLayout,所有組件左對齊,水平間距為20,垂直間距為30 f.setLayout(new FlowLayout(FlowLayout.LEFT,20,30)); f.setSize(220,300); f.setLocation(300,200); f.add(new Button("第1個按鈕")); f.add(new Button("第2個按鈕")); f.add(new Button("第3個按鈕")); f.add(new Button("第4個按鈕")); f.add(new Button("第5個按鈕")); f.add(new Button("第6個按鈕")); f.setVisible(true); } }
到此這篇關(guān)于Java GUI進(jìn)階之流式布局管理器FlowLayout專項精講的文章就介紹到這了,更多相關(guān)Java FlowLayout內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
spring boot國際化之MessageSource的使用方法
這篇文章主要給大家介紹了spring boot國際化之MessageSource使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11Java字節(jié)與字符流永久存儲json數(shù)據(jù)
本篇文章給大家詳細(xì)講述了Java字節(jié)與字符流永久存儲json數(shù)據(jù)的方法,以及代碼分享,有興趣的參考學(xué)習(xí)下。2018-02-02java 快速實現(xiàn)異步調(diào)用的操作方法
這篇文章主要介紹了java 如何快速實現(xiàn)異步調(diào)用方法,今天我們就來了解下 CompletableFuture,它Java 8引入的一種功能強大的異步編程工具,可以用于實現(xiàn)復(fù)雜的異步操作和處理鏈?zhǔn)降漠惒饺蝿?wù),需要的朋友可以參考下2023-07-07