一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務(wù)器之家 - 編程語言 - JAVA教程 - java基礎(chǔ)之標簽、按鈕和按鈕事件簡介

java基礎(chǔ)之標簽、按鈕和按鈕事件簡介

2019-12-21 14:56hebedich JAVA教程

本文給大家?guī)淼氖莏ava圖形界面的基礎(chǔ)知識,簡單介紹了標簽、按鈕和按鈕事件,十分的詳細,有需要的小伙伴可以參考下。

標簽和按鈕也許是圖形界面中最常見的兩種組件,按鈕又總是與激發(fā)動作事件有關(guān)。

標簽

標簽(JLabel)是最簡單的Swing組件。標簽對象的作用是對位于其后的界面組件作說明。可以設(shè)置標簽的屬性,即前景色,背景色、字體等,但不能動態(tài)地編輯標簽中的文本。

程序關(guān)于標簽的基本內(nèi)容有以下幾個方面:
1.聲明一個標簽名
2.創(chuàng)建一個標簽對象;
3.將標簽對象加入到某個容器。

JLabel類的主要構(gòu)造方法是:
1.JLabel ():構(gòu)造一個無顯示文字的標簽;
2.JLabel (String s):構(gòu)造一個顯示文字為s的標簽;
3.JLabel(String s, int align):構(gòu)造一個顯示文字為s的標簽。align為顯示文字的水平方式,對齊方式有三種: •左對齊:

JLabel.LEFT

•中心對齊:JLabel.CENTER
•右對齊:JLabel.RIGHT

JLabel類的其他常用方法是:
1.setText(String s):設(shè)置標簽顯示文字;
2.getText():獲取標簽顯示文字;
3.setBackground(Color c):設(shè)置標簽的背景顏色,默認背景顏色是容器的背景顏色;
4.setForeground(Color c):設(shè)置標簽上的文字的顏色,默認顏色是黑色。

按鈕

按鈕(JButton)在界面設(shè)計中用于激發(fā)動作事件。按鈕可顯示文本,當(dāng)按鈕被激活時,能激發(fā)動作事件。

JButton常用構(gòu)造方法有:
1.JButton():創(chuàng)建一個沒有標題的按鈕對象;
2.JButton(String s):創(chuàng)建一個標題為s的按鈕對象。

JButton類的其他常用方法有:
1.setLabel(String s):設(shè)置按鈕的標題文字。
2.getLabel():獲取按鈕的標題文字。
3.setMnemonic(char mnemonic):設(shè)置熱鍵
4.setToolTipText(String s):設(shè)置提示文字。
5.setEnabled(boolean b):設(shè)置是否響應(yīng)事件
6.setRolloverEnabled(boolean b):設(shè)置是否可滾動。
7.addActionListener(ActionListener aL):向按鈕添加動作監(jiān)視器。
8.removeActionListener(ActionListener aL):移動按鈕的監(jiān)視器。

按鈕處理動作事件的基本內(nèi)容有以下幾個方面:

1.與按鈕動作事件相關(guān)的接口是ActionListener,給出實現(xiàn)該接口的類的定義;
2.聲明一個按鈕名;
3.創(chuàng)建一個按鈕對象;
4.將按鈕對象加入到某個容器;
5.為需要控制的按鈕對象注冊監(jiān)視器,對在這個按鈕上產(chǎn)生的事件實施監(jiān)聽。如果是按鈕對象所在的類實現(xiàn)監(jiān)視接口,注冊監(jiān)視器的代碼形式是

 

復(fù)制代碼 代碼如下:

addActionListener(this);

 

參見【例 11-3】,如果是別的類A的對象a作為監(jiān)視器,類A必須實現(xiàn)ActionListener接口,完成監(jiān)視器注冊需用以下形式的兩行代碼:

 

復(fù)制代碼 代碼如下:

A a = new A();  //創(chuàng)建類A的實例a
addActionListener(a);  //用對象a作為監(jiān)視器對事件進行監(jiān)視。

 

6.在實現(xiàn)接口ActionListener的類中,給出處理事件的方法的定義:

 

復(fù)制代碼 代碼如下:

public void actionPerformed(ActionEvent e);

 

在處理事件的方法中,用獲取事件源信息的方法獲得事件源信息,并判斷和完成相應(yīng)處理。獲得事件源的方法有:方法 getSource()獲得事件源對象;方法getActionCommand()獲得事件源按鈕的文字信息。

【例 11-3】處理按鈕事件實例,應(yīng)用程序定義了一個窗口,窗口內(nèi)設(shè)置兩個按鈕,當(dāng)點擊Red按鈕時,窗口的背景色置成紅色;點擊Green按鈕時,窗口的背景色置成綠色。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import javax.swing.*;import java.awt.*;import java.awt.event.*;
public class J503{
  public static void main(String[]args){
    ButtonDemo myButtonGUI=new ButtonDemo();//聲明并創(chuàng)建按鈕對象
    myButtonGUI.setVisible(true);
  }
}
class ButtonDemo extends JFrame implements ActionListener{
  public static final int Width=250;
  public static final int Height=200;
  ButtonDemo(){
    setSize(Width,Height); setTitle("按鈕事件樣例");
    Container conPane=getContentPane();
    conPane.setBackground(Color.BLUE);
    conPane.setLayout(new FlowLayout());//采用FlowLayout布局
    JButton redBut=new JButton("Red");
    redBut.addActionListener(this);//給Red按鈕注冊監(jiān)視器
    conPane.add(redBut);//在窗口添加Red按鈕
    JButton greenBut=new JButton("Green");
    greenBut.addActionListener(this);//給Green按鈕注冊監(jiān)視器
    conPane.add(greenBut);//在窗口添加Green按鈕
  }
  public void actionPerformed(ActionEvent e){//實現(xiàn)接口處理事件的方法
    Container conPane=getContentPane();
    if(e.getActionCommand().equals("Red"))//是Red按鈕事件
      conPane.setBackground(Color.RED);
    else if(e.getActionCommand().equals("Green"))//是Green按鈕事件
      conPane.setBackground(Color.GREEN);
    else{}
  }
}

用鼠標點擊按鈕產(chǎn)生事件對象,將事件送達對象,這個過程稱為激發(fā)事件。當(dāng)一個事件被送到監(jiān)視器對象時,監(jiān)視器對象實現(xiàn)的接口方法被調(diào)用,調(diào)用時系統(tǒng)會提供事件對象的參數(shù)。程序中雖然沒有調(diào)用監(jiān)視器方法的的代碼,但是程序做了兩件事:第一,指定哪一個對象是監(jiān)視器,它將響應(yīng)由按鈕的激發(fā)的事件,這個步驟稱為監(jiān)視器注冊。第二,必須定義一個方法,當(dāng)事件送到監(jiān)視器時,這個方法將被調(diào)用。程序中沒有調(diào)用這個方法的代碼,這個調(diào)用是系統(tǒng)執(zhí)行的。

在上面的程序中,代碼
    redBut.addActionListener(this);
注冊this作為redBut按鈕的監(jiān)視器,隨后的代碼也注冊this作為greenBut按鈕的監(jiān)視器。在上述的程序中,this就是當(dāng)前的ButtonDemo對象myButtonGUI。這樣,ButtonDemo類就是監(jiān)視器對象的類,對象MyButtonGUI作為兩個按鈕的監(jiān)視器。在類ButtonDemo中有監(jiān)視器方法的實現(xiàn)。當(dāng)一個按鈕被點擊時,系統(tǒng)以事件的激發(fā)者為參數(shù),自動調(diào)用方法actionPerformed ()。

組件不同,激發(fā)的事件種類也不同,監(jiān)視器類的種類也不同。按鈕激發(fā)的事件稱為action事件,相應(yīng)的監(jiān)視器稱為action監(jiān)視器。一個action監(jiān)視器對象的類型為ActionListener,類要實現(xiàn)ActionListener接口。程序體現(xiàn)這些內(nèi)容需要做到兩點:

1.在類定義的首行接上代碼implements ActionListener;
2.類內(nèi)定義方法actionPerformed ()。

前面程序中的類ButtonDemo正確地做到了這兩點。

每個界面元素當(dāng)激發(fā)事件時,都有一個字符串與這個事件相對應(yīng),這個字符串稱為action命令。用代碼 e.getActionCommand()就能獲取action事件參數(shù)e的命令字符串,據(jù)此,方法actionPerformed()就能知道是哪一個按鈕激發(fā)的事件。在默認情況下,按鈕的命令字符串就是按鈕上的文字。如有必要可以用方法 setActionCommand()為界面組件設(shè)置命令字符串。

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

延伸 · 閱讀

精彩推薦
  • JAVA教程Java中實現(xiàn)雙數(shù)組Trie樹實例

    Java中實現(xiàn)雙數(shù)組Trie樹實例

    這篇文章主要介紹了Java中實現(xiàn)雙數(shù)組Trie樹實例,雙數(shù)組Trie就是一種優(yōu)化了空間的Trie樹,本文給出了實現(xiàn)代碼、測試代碼和測試結(jié)果,需要的朋友可以參考下...

    junjie2002019-12-08
  • JAVA教程java加密算法分享(rsa解密、對稱加密、md5加密)

    java加密算法分享(rsa解密、對稱加密、md5加密)

    這篇文章主要介紹了java加密算法,包括rsa解密、對稱加密、md5加密等,需要的朋友可以參考下 ...

    Java教程網(wǎng)3432019-11-22
  • JAVA教程JavaEE中關(guān)于ServletConfig的小結(jié)

    JavaEE中關(guān)于ServletConfig的小結(jié)

    ServletConfig是針對特定的Servlet的參數(shù)或?qū)傩?。ServletConfig是表示單獨的Servlet的配置和參數(shù),只是適用于特定的Servlet。從一個servlet被實例化后,對任何客戶端...

    hebedich1802019-12-02
  • JAVA教程java NIO 詳解

    java NIO 詳解

    Java NIO(New IO)是從Java 1.4版本開始引入的一個新的IO API,可以替代標準的Java IO API。本系列教程將有助于你學(xué)習(xí)和理解Java NIO。 ...

    hebedich4502019-12-03
  • JAVA教程Java命名規(guī)則詳細總結(jié)

    Java命名規(guī)則詳細總結(jié)

    Class名應(yīng)是首字母大寫的名詞。命名時應(yīng)該使其簡潔而又具有描述性。異常類的命名,應(yīng)以Exception結(jié)尾。Interface的命名規(guī)則與Class相同 ...

    java技術(shù)網(wǎng)3802019-10-17
  • JAVA教程java中實體類和JSON對象之間相互轉(zhuǎn)化

    java中實體類和JSON對象之間相互轉(zhuǎn)化

    Java中關(guān)于Json格式轉(zhuǎn)化Object,Map,Collection類型和String類型之間的轉(zhuǎn)化在我們實際項目中應(yīng)用的很是普遍和廣泛。最近工作的過程中也是經(jīng)常有,因此,自己封裝...

    hebedich4412019-12-17
  • JAVA教程java實現(xiàn)文本文件刪除空行的示例分享

    java實現(xiàn)文本文件刪除空行的示例分享

    這篇文章主要介紹了java實現(xiàn)文本文件刪除空行的示例,需要的朋友可以參考下 ...

    java教程網(wǎng)2452019-11-17
  • JAVA教程Java實現(xiàn)超級實用的日記本

    Java實現(xiàn)超級實用的日記本

    一個用Java語言編寫的,實現(xiàn)日記本的基本編輯功能、各篇日記之間的上下翻頁、查詢?nèi)沼泝?nèi)容的程序。全部代碼分享給大家,有需要的小伙伴參考下。 ...

    hebedich4432019-12-17
主站蜘蛛池模板: 校花被老头夺去第一次动图 | 日本暖暖视频在线观看 | 日本黄色高清视频网站 | 精品精品国产自在久久高清 | 国产成人91高清精品免费 | 久久艹综合 | 日本高清全集免费观看 | 免费在线影院 | 日韩国产成人资源精品视频 | 午夜宅男网 | katsumi精品hd | 日韩视频免费一区二区三区 | 青青青国产精品国产精品美女 | 国产区成人精品视频 | 成人精品免费网站 | 久久午夜夜伦痒痒想咳嗽P 久久无码AV亚洲精品色午夜麻豆 | 污软件在线观看 | 国产精品热久久毛片 | 日本加勒比在线精品视频 | 四虎影视色费永久在线观看 | 青青草在观免费 | 天天综合天天色 | 国产欧美日韩视频在线观看一区二区 | 久久三级视频 | 午夜神器18以下不能进免费 | 欧美一级欧美一级高清 | 欧美黑大吊 | 亚洲国产精品婷婷久久久久 | 午夜影院免费观看视频 | www91在线观看 | 爱爱小说漫画 | 国产精品香蕉一区二区三区 | 精品免费国产一区二区三区 | 精品一区二区三区视频 | 久久精品嫩草影院免费看 | 亚洲欧美日韩高清 | 乌克兰少妇大胆大BBW | 2019年国产不卡在线刷新 | fquer老师 | 91肥熟国产老肥熟在线 | www视频在线免费观看 |