日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

JAVA教程 第五講 AWT圖形用戶界面設計(一)

瀏覽:36日期:2024-03-06 10:36:48

5.1 用AWT生成圖形化用戶界面

抽象窗口工具包AWT (Abstract Window Toolkit) 是 API為Java 程序提供的建立圖形用戶界面GUI (Graphics User Interface)工具集,AWT可用于Java的applet和applications中。它支持圖形用戶界面編程的功能包括: 用戶界面組件;事件處理模型;圖形和圖像工具,包括形狀、顏色和字體類;布局管理器,可以進行靈活的窗口布局而與特定窗口的尺寸和屏幕分辨率無關;數據傳送類,可以通過本地平臺的剪貼板來進行剪切和粘貼。

5.1.1 java.awt包

java.awt包中提供了GUI設計所使用的類和接口,可從圖5.1中看到主要類之間的關系。

java.awt包提供了基本的java程序的GUI設計工具。主要包括下述三個概念:

組件--Component

容器--Container

布局管理器--LayoutManager

5.1.2 組件和容器

Java的圖形用戶界面的最基本組成部分是組件(Component),組件是一個可以以圖形化的方式顯示在屏幕上并能與用戶進行交互的對象,例如一個按鈕,一個標簽等。組件不能獨立地顯示出來,必須將組件放在一定的容器中才可以顯示出來。

類java.awt.Component是許多組件類的父類,Component類中封裝了組件通用的方法和屬性,如圖形的組件對象、大小、顯示位置、前景色和背景色、邊界、可見性等,因此許多組件類也就繼承了Component類的成員方法和成員變量,相應的成員方法包括:

 getComponentAt(int x, int y)

 getFont()

 getForeground()

 getName()

 getSize()

 paint(Graphics g)

 repaint()

 update()

 setVisible(boolean b)

 setSize(Dimension d)

 setName(String name)等

容器(Container)也是一個類,實際上是Component的子類,因此容器本身也是一個組件,具有組件的所有性質,但是它的主要功能是容納其它組件和容器。

布局管理器(LayoutManager):每個容器都有一個布局管理器,當容器需要對某個組件進行定位或判斷其大小尺寸時,就會調用其對應的布局管理器。

為了使我們生成的圖形用戶界面具有良好的平臺無關性,Java語言中,提供了布局管理器這個工具來管理組件在容器中的布局,而不使用直接設置組件位置和大小的方式。

在程序中安排組件的位置和大小時,應該注意以下兩點:

1.容器中的布局管理器負責各個組件的大小和位置,因此用戶無法在這種情況下設置組件的這些屬性。如果試圖使用Java 語言提供的setLocation(),setSize(),setBounds() 等方法,則都會被布局管理器覆蓋。

2.如果用戶確實需要親自設置組件大小或位置,則應取消該容器的布局管理器,方法為:

 setLayout(null);

5.1.3 常用容器

容器java.awt.Container是Component的子類,一個容器可以容納多個組件,并使它們成為一個整體。容器可以簡化圖形化界面的設計,以整體結構來布置界面。所有的容器都可以通過add()方法向容器中添加組件。

有三種類型的容器:Window、Panel、ScrollPane,常用的有Panel, Frame, Applet。

1.Frame

以下是容器的例子:

例5.1

import java.awt.*;

public class MyFrame extends Frame{

public static void main(String args[ ]){

MyFrame fr = new MyFrame('Hello Out There!');

 //構造方法

fr.setSize(200,200);

//設置Frame的大小,缺省為(0,0)

fr.setBackground(Color.red);

//設置Frame的背景,缺省為紅色

fr.setVisible(true);

//設置Frame為可見,缺省為不可見

}

 public MyFrame (String str){

super(str); //調用父類的構造方法

 }

}

一般我們要生成一個窗口,通常是用Window的子類Frame來進行實例化,而不是直接用到Window類。Frame的外觀就像我們平常在windows系統下見到的窗口,有標題、邊框、菜單、大小等等。每個Frame的對象實例化以后,都是沒有大小和不可見的,因此必須調用setSize( )來設置大小,調用setVisible(true)來設置該窗口為可見的。

另外,AWT在實際的運行過程中是調用所在平臺的圖形系統,因此同樣一段AWT程序在不同的操作系統平臺下運行所看到的圖形系統是不一樣的。例如在windows下運行,則顯示的窗口是windows風格的窗口;而在UNIX下運行時,則顯示的是UNIX風格的窗口。

2. Panel

例5.2

import java.awt.*;

public class FrameWithPanel extends Frame{

public FrameWithPanel(String str){

super(str);

  }

  public static void main(String args[]){

FrameWithPanel fr = new FrameWithPanel('Frame with Panel');

Panel pan=new Panel();

fr.setSize(200,200);

fr.setBackground(Color.red);

 //框架fr的背景顏色設置為紅色

fr.setLayout(null);

 //取消布局管理器

pan.setSize(100,100);

pan.setBackground(Color.yellow);

 //設置面板pan的背景顏色為黃色

fr.add(pan); //用add方法把面板pan添加到框架fr中

fr.setVisible(true);

}

}

一般我們要生成一個窗口,通常是用Window的子類Frame來進行實例化,而不是直接用到Window類。Frame的外觀就像我們平常在windows系統下見到的窗口,有標題、邊框、菜單、大小等等。每個Frame的對象實例化以后,都是沒有大小和不可見的,因此必須調用setSize( )來設置大小,調用setVisible(true)來設置該窗口為可見的。

另外,AWT在實際的運行過程中是調用所在平臺的圖形系統,因此同樣一段AWT程序在不同的操作系統平臺下運行所看到的圖形系統是不一樣的。例如在windows下運行,則顯示的窗口是windows風格的窗口;而在UNIX下運行時,則顯示的是UNIX風格的窗口。

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
成人午夜在线| 欧美国产另类| 亚洲精品免费观看| 欧美日本久久| 日韩欧美视频专区| 老鸭窝毛片一区二区三区| 欧美啪啪一区| 国产精品hd| 91精品观看| 日本成人手机在线| 四虎成人av| 尹人成人综合网| 国产麻豆一区二区三区| 国产精品久久久久久久久妇女| 免费成人网www| 天堂成人免费av电影一区| 蜜桃国内精品久久久久软件9| 99在线|亚洲一区二区| 麻豆视频一区二区| 91嫩草亚洲精品| 香蕉精品视频在线观看| 日韩三区四区| 日韩电影二区| 一区二区国产在线| 国产精品av久久久久久麻豆网| 日韩av一区二区三区| 视频福利一区| 欧美激情五月| 激情久久久久久| 亚州av日韩av| 欧美精品高清| 麻豆精品久久久| 国产v综合v| 日韩欧美2区| 成人羞羞视频播放网站| 日韩av一区二| 亚洲女同一区| 精品网站999| 欧美日韩 国产精品| 91亚洲国产高清| 蜜桃久久久久久| 99香蕉国产精品偷在线观看 | 亚洲精品美女| 欧美一级鲁丝片| 日韩高清欧美激情| 91久久久精品国产| 精品一区二区三区亚洲| 在线看片一区| 久久久国产精品一区二区中文| 国产亚洲欧美日韩在线观看一区二区| 久久久久久美女精品| 国产精品一区二区三区四区在线观看 | 7777精品| 欧美精品一线| 视频在线不卡免费观看| 日本不卡一区二区三区| 国产精品7m凸凹视频分类| 日本欧美国产| 国产精品嫩模av在线| 视频一区欧美精品| www.51av欧美视频| 久久中文字幕一区二区| 日韩美女精品| 久久福利毛片| 狠狠久久伊人| 美女国产精品久久久| 亚州av一区| 91久久黄色| 久久精品高清| 中文字幕系列一区| 欧美片第1页| 成人欧美一区二区三区的电影| 美女性感视频久久| 国产精品高清一区二区| 欧美午夜网站| 国产日韩免费| 国产精品一区二区精品视频观看| 亚洲a成人v| 久久夜色精品| 成人午夜国产| 亚洲成人精品| 99久久九九| 99久久夜色精品国产亚洲1000部| 韩国女主播一区二区三区| 国产精品久久久网站| 久久国产视频网| 欧美影院精品| 国产精品久久久久av蜜臀| 清纯唯美亚洲综合一区| 日本特黄久久久高潮| 97精品国产99久久久久久免费| 日韩一区网站| 国产免费播放一区二区| 国产精品1luya在线播放| 蜜臀91精品一区二区三区| 亚洲欧美日韩专区| 亚洲精品自拍| 国产欧美激情| 国产精品yjizz视频网| 色综合www| 国产精品日韩| 日本欧美一区| 久久99蜜桃| 四季av一区二区凹凸精品| 日韩欧美国产精品综合嫩v| 欧美日韩在线网站| 爽爽淫人综合网网站| 亚洲毛片在线| 国产精品va视频| 国产伦理久久久久久妇女| 国产精品男女| 色在线中文字幕| 亚洲美洲欧洲综合国产一区| 中文字幕一区日韩精品| 亚洲午夜免费| 国产精品一区二区三区av麻 | 亚洲精品伊人| 国产欧美日韩精品一区二区免费| 免费日韩成人| 欧美综合另类| 婷婷综合一区| 国产91在线播放精品| 视频二区不卡| 视频一区二区中文字幕| 国产精品一区二区中文字幕| 中文字幕人成乱码在线观看| 国产精品av久久久久久麻豆网| 蜜桃视频一区二区三区| 国产精品久久久久久久久久齐齐| 蜜桃视频在线网站| 一区二区三区网站| 成人台湾亚洲精品一区二区| 在线亚洲国产精品网站| 国产日韩一区| 久久久久99| 日本aⅴ精品一区二区三区 | 亚洲资源在线| 另类小说一区二区三区| 欧美久久精品一级c片| 久久狠狠久久| 午夜精品亚洲| 精品三区视频| 中文字幕一区二区三区日韩精品 | 婷婷激情久久| 国产精品三p一区二区| 在线手机中文字幕| 亚州国产精品| 久久亚洲成人| 88久久精品| 好看的亚洲午夜视频在线| 欧美黄页在线免费观看 | 在线日韩成人| 三级小说欧洲区亚洲区| 欧美日韩伊人| 伊人久久大香线蕉av超碰演员| 欧美国产日韩电影| 婷婷精品在线观看| 日韩亚洲在线| 国产精品sm| 男人的天堂亚洲一区| 国产中文欧美日韩在线| 日日摸夜夜添夜夜添国产精品| 久久一区二区中文字幕| 国产欧美日韩精品一区二区免费 | 欧美经典一区| 亚洲天堂日韩在线| jiujiure精品视频播放| 国产精品蜜芽在线观看| 久久国产人妖系列| 一区二区三区四区日本视频| 国产日韩欧美三级| 亚洲制服一区| 欧美网站在线| 日韩av免费| 国产成人在线中文字幕| 久久精品99国产精品日本| 夜夜嗨av一区二区三区网站四季av| 天堂√8在线中文| 麻豆国产欧美日韩综合精品二区| 中文字幕日韩亚洲| 美女精品一区| 亚洲一区二区三区高清不卡| 欧美午夜精彩| 久久伦理在线| 精品一区二区三区中文字幕在线| 日本亚洲三级在线| 男女男精品视频网| 午夜在线播放视频欧美| 九九综合在线| 亚洲午夜黄色| 亚洲午夜黄色| 国产精品99免费看| 色爱av综合网| 三上悠亚国产精品一区二区三区| 成年男女免费视频网站不卡| 福利片在线一区二区| 成人国产精品一区二区网站| 精品三级国产| 福利一区和二区| 国产精品手机在线播放|