欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解如何使用Java編寫圖形化的窗口

 更新時(shí)間:2015年10月08日 16:14:31   投稿:goldensun  
這篇文章主要介紹了如何使用Java編寫圖形化的窗口,是Java的本地GUI軟件開發(fā)的基礎(chǔ),需要的朋友可以參考下

窗口是GUI編程的基礎(chǔ),小應(yīng)用程序或圖形界面的應(yīng)用程序的可視組件都放在窗口中,在GUI中,窗口是用戶屏幕的一部分,起著在屏幕中一個(gè)小屏幕的作用。有以下三種窗口:
Applet窗口:Applet類管理這個(gè)窗口,當(dāng)應(yīng)用程序程序啟動(dòng)時(shí),由系統(tǒng)創(chuàng)建和處理;
框架窗口(JFrame):這是通常意義上的窗口,它支持窗口周邊的框架、標(biāo)題欄,以及最小化、最大化和關(guān)閉按鈕;
一種無(wú)邊框窗口(JWindow):沒(méi)有標(biāo)題欄,沒(méi)有框架,只是一個(gè)空的矩形。

用Swing中的JFrame類或它的子類創(chuàng)建的對(duì)象就是JFrame窗口。

JFrame類的主要構(gòu)造方法:

  • JFrame():創(chuàng)建無(wú)標(biāo)題的窗口對(duì)象;
  • JFrame(String s):創(chuàng)建一個(gè)標(biāo)題名是字符串s的窗口對(duì)象。

JFrame類的其他常用方法:

  • setBounds(int x,int y,int width,int height):參數(shù)x,y指定窗口出現(xiàn)在屏幕的位置;參數(shù)width,height指定窗口的寬度和高度。單位是像素。
  • setSize(int width,int height):設(shè)置窗口的大小,參數(shù)width和height指定窗口的寬度和高度,單位是像素。
  • setBackground(Color c):以參數(shù) c設(shè)置窗口的背景顏色。
  • setVisible(boolean b):參數(shù)b設(shè)置窗口是可見(jiàn)或不可見(jiàn)。JFrame默認(rèn)是不可見(jiàn)的。
  • pack():用緊湊方式顯示窗口。如果不使用該方法,窗口初始出現(xiàn)時(shí)可能看不到窗口中的組件,當(dāng)用戶調(diào)整窗口的大小時(shí),可能才能看到這些組件。
  • setTitle(String name):以參數(shù)name設(shè)置窗口的名字。
  • getTitle():獲取窗口的名字。
  • setResiable(boolean m):設(shè)置當(dāng)前窗口是否可調(diào)整大小(默認(rèn)可調(diào)整大小)。

Swing里的容器都可以添加組件,除了JPanel及其子類(JApplet)之外,其他的Swing容器不允許把組件直接加入。其他容器添加組件有兩種方法:
一種是用getContentPane()方法獲得內(nèi)容面板,再將組件加入。例如,例5.1程序中的代碼:

  mw.getContentPane().add(button);


該代碼的意義是獲得容器的內(nèi)容面板,并將按鈕button添加到這個(gè)內(nèi)容面板中。
另一種是建立一個(gè)JPanel對(duì)象的中間容器,把組件添加到這個(gè)容器中,再用setContentPane()把這個(gè)容器置為內(nèi)容面板。例如,代碼:

  JPanel contentPane = new JPanel();
  …
  mw.setContentPane(contentPane);


以上代碼把contentPane置成內(nèi)容面板。

【例】一個(gè)用JFrame類創(chuàng)建窗口的Java應(yīng)用程序。窗口只有一個(gè)按鈕。

import javax.swing.*;
public class Example5_1{
  public static void main(String args[]){
    JFrame mw = new JFrame(“我的第一個(gè)窗口”);
    mw.setSize(250,200);
    JButton button = new JButton(“我是一個(gè)按鈕”);
    mw.getContentPane().add(button);
    mw.setVisible(true);
  }
}

用Swing 編寫GUI程序時(shí),通常不直接用JFrame創(chuàng)建窗口對(duì)象,而用JFrame派生的子類創(chuàng)建窗口對(duì)象,在子類中可以加入窗口的特定要求和特別的內(nèi)容等。

【例】定義JFrame派生的子類MyWindowDemo創(chuàng)建JFrame窗口。類MyWindowDemo的構(gòu)造方法有五個(gè)參數(shù):窗口的標(biāo)題名,加放窗口的組件,窗口的背景顏色以及窗口的高度和寬度。在主方法中,利用類MyWindowDemo創(chuàng)建兩個(gè)類似的窗口。

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Example5_2{
  public static MyWindowDemo mw1;
  public static MyWindowDemo mw2;
  public static void main(String args[]){
    JButton static butt1 = new JButton(“我是一個(gè)按鈕”);
    String name1 = “我的第一個(gè)窗口”;
    String name2 = “我的第二個(gè)窗口”;
    mw1 = new MyWindowDemo(name1,butt1,Color.blue,350,450);
    mw1.setVisible(true);
    JButton butt2 = new JButton(“我是另一個(gè)按鈕”);
    mw2 = new MyWindowDemo(name2,butt2,Color.magenta,300,400);
    mw2.setVisible(true);
  }
}
class MyWindowDemo extends JFrame{
  public MyWindowDemo(String name,JButton button,Color c,int w,int h){
    super();
    setTitle(name);
    setSize(w,h);
    Container con = getContentPane();
    con.add(button);
    con.setBackground(c);
  }
}

顯示顏色由java.awt包的Color類管理,在Color類中預(yù)定了一些常用的顏色,參見(jiàn)表11-3。JFrame類的部分常用方法參見(jiàn)下表。
Color 類中定義的常用顏色

JFrame 類的部分常用方法

相關(guān)文章

  • java中Javers?比較兩個(gè)類的差異

    java中Javers?比較兩個(gè)類的差異

    本文主要介紹了Javers?比較兩個(gè)類的差異,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • java中的取整與四舍五入方法實(shí)例

    java中的取整與四舍五入方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于java中取整與四舍五入的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • JavaWeb Spring依賴注入深入學(xué)習(xí)

    JavaWeb Spring依賴注入深入學(xué)習(xí)

    這篇文章主要為大家詳細(xì)介紹了JavaWeb Spring依賴注入,深入學(xué)習(xí)Spring依賴注入,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 通過(guò)實(shí)例了解如何在JavaWeb實(shí)現(xiàn)文件下載

    通過(guò)實(shí)例了解如何在JavaWeb實(shí)現(xiàn)文件下載

    這篇文章主要介紹了通過(guò)實(shí)例了解如何在JavaWeb實(shí)現(xiàn)文件下載,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Mybatis中SqlSession接口中selectList方法詳解

    Mybatis中SqlSession接口中selectList方法詳解

    這篇文章主要給大家介紹了關(guān)于Mybatis中SqlSession接口中selectList方法的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2023-03-03
  • Idea配置超詳細(xì)圖文教程(2020.2版本)

    Idea配置超詳細(xì)圖文教程(2020.2版本)

    這篇文章主要介紹了Idea配置超詳細(xì)圖文教程(2020.2版本),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • java中functional interface的分類和使用詳解

    java中functional interface的分類和使用詳解

    這篇文章主要介紹了java中functional interface的分類和使用,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • JAVA學(xué)習(xí)進(jìn)階篇之時(shí)間與日期相關(guān)類

    JAVA學(xué)習(xí)進(jìn)階篇之時(shí)間與日期相關(guān)類

    在日常的開發(fā)工作當(dāng)中,我們經(jīng)常需要用到日期相關(guān)的類,下面這篇文章主要給大家介紹了關(guān)于JAVA學(xué)習(xí)進(jìn)階篇之時(shí)間與日期相關(guān)類的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • Java如何判斷整數(shù)溢出,溢出后怎么得到提示

    Java如何判斷整數(shù)溢出,溢出后怎么得到提示

    這篇文章主要介紹了Java如何判斷整數(shù)溢出,溢出后怎么得到提示,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • Java使用 try-with-resources 實(shí)現(xiàn)自動(dòng)關(guān)閉資源的方法

    Java使用 try-with-resources 實(shí)現(xiàn)自動(dòng)關(guān)閉資源的方法

    這篇文章主要介紹了Java使用 try-with-resources 實(shí)現(xiàn)自動(dòng)關(guān)閉資源的方法,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06

最新評(píng)論