1. 程式人生 > >JAVA程式設計題解與上機指導 第四版 第8章 Java的圖形使用者介面設計 8.2 建立“My JFrame”

JAVA程式設計題解與上機指導 第四版 第8章 Java的圖形使用者介面設計 8.2 建立“My JFrame”

一、簡介:程式設計實現建立並顯示一個標題為“My Frame”,Frame背景為黑色,Panel背景為白色,其中,Panel中加入“開啟”“關閉”“返回”三個按鈕,並一行排開。

二、程式碼如下:

import java.awt.*;
import javax.swing.*;
import java.io.*;

public class ThreeButtonsFrameTest {
	public static void main(String args[])
	{
		JFrame frame =new JFrame("My Frame");//建立一個JFrame例項
		frame.setSize(400,500);//設定JFrame的大小
		frame.getContentPane().setBackground(Color.BLACK);//設定JFrame的背景色
		
		frame.setLayout(new FlowLayout(FlowLayout.CENTER,50,50));//設定JFrame的佈局管理器為FlowLayout
		JPanel contentPane=new JPanel();//建立JPanel例項
		contentPane.setSize(100,100);//設定JPanel的大小
		//設定JPanel的佈局管理器為FlowLayout
		contentPane.setLayout(new FlowLayout());
		contentPane.setBackground(Color.white);//設定JPanel的背景色
		
		JButton btn1,btn2,btn3;//定義按鈕
		btn1=new JButton("開啟");
		btn2=new JButton("關閉");
		btn3=new JButton("返回");
		contentPane.add(btn1);//將按鈕新增到JPanel面板
		contentPane.add(btn2);//使用JPanel的佈局管理器
		contentPane.add(btn3);

		//將面板JPanel新增到JFrame中,使用JFrame的佈局管理器
		frame.add(contentPane);
		frame.setVisible(true);//顯示Jframe
		
		BufferedReader intemp=new BufferedReader(new InputStreamReader(System.in));
		System.out.println("Press return key to exit.");
		try
		{
			String s=intemp.readLine();//等待使用者的輸入以關閉視窗
		}catch(IOException e)
		{
			System.out.println("IOException");
		}
		System.exit(0);//強行退出並關閉
	}
}

三、執行結果:

四、梳理:

軟體包:

1、java.awt.*:功能:包含用於建立使用者介面和繪製圖形影象的所有類。

類摘要

編輯
AlphaComposite AlphaComposite 類實現一些基本的 alpha 合成規則,將源色與目標色組合,在圖形和影象中實現混合和透明效果。
AWTEvent 所有 AWT 事件的根事件類。
AWTEventMulticaster AWTEventMulticaster 實現對 java.awt.event 包中定義的 AWT 事件的指派,該指派是有效的、執行緒安全的多路廣播事件指派。
AWTKeyStroke AWTKeyStroke 表示鍵盤(或等效輸入裝置)上的鍵操作。
AWTPermission 此類用於 AWT 許可權。
BasicStroke BasicStroke 類定義針對圖形圖元輪廓呈現屬性的一個基本集合,這些圖元使用 Graphics2D物件呈現,而該物件的 Stroke 屬性設定為此 BasicStroke。
BorderLayout 這是一個佈置容器的邊框佈局,它可以對容器元件進行安排,並調整其大小,使其符合下列五個區域:北、南、東、西、中。
BufferCapabilities 緩衝區的能力和屬性。
BufferCapabilities.FlipContents 頁面翻轉後可能的後臺緩衝區內容的一個型別安全的列舉
Button 此類建立一個標籤按鈕。
Canvas Canvas 元件表示螢幕上一個空白矩形區域,應用程式可以在該區域內繪圖,或者可以從該區域捕獲使用者的輸入事件。
CardLayout CardLayout 物件是容器的佈局管理器。
Checkbox 複選框是一個可處於“開”(true) 或“關”(false) 狀態的圖形元件。
CheckboxGroup CheckboxGroup 類用於集合 Checkbox 按鈕集。
CheckboxMenuItem 此類表示一個可包括在選單中的複選框。
Choice Choice 類表示一個彈出式選擇選單。
Color Color 類用於封裝預設 sRGB 顏色空間中的顏色,或者用於封裝由ColorSpace標識的任意顏色空間中的顏色。
Component component是一個具有圖形表示能力的物件,可在螢幕上顯示,並可與使用者進行互動。
ComponentOrientation ComponentOrientation 類封裝語言敏感的方向,用於排序元件或文字內容。
Container 一般的 Abstract Window Toolkit(AWT) 容器物件是一個可包含其他 AWT 元件的元件。
Cursor 封裝滑鼠游標的位圖表示形式的類。
DefaultKeyboardFocusManager AWT 應用程式的預設 KeyboardFocusManager。
Desktop Desktop 類允許 Java 應用程式啟動已在本機桌面上註冊的關聯應用程式,以處理URI或檔案。
Dialog Dialog 是一個帶標題和邊界的頂層視窗,邊界一般用於從使用者處獲得某種形式的輸入。
Dimension Dimension 類封裝單個物件中元件的寬度和高度(精確到整數)。
DisplayMode DisplayMode 類封裝 GraphicsDevice 的位深、高度、寬度和重新整理率。
Event 注:Event 類已廢棄,只可用於向後相容。
EventQueue EventQueue 是一個與平臺無關的類,它將來自於底層同位體類和受信任的應用程式類的事件列入佇列。
FileDialog FileDialog 類顯示一個對話方塊視窗,使用者可以從中選擇檔案。
FlowLayout 流佈局用於安排有向流中的元件,這非常類似於段落中的文字行。
FocusTraversalPolicy FocusTraversalPolicy 定義一種順序,按此順序遍歷具有特定焦點迴圈根的 Component。
Font Font 類表示字型,可以使用它以可見方式呈現文字。
FontMetrics FontMetrics 類定義字型規格物件,該物件封裝將在特定螢幕上呈現特定字型的有關資訊。
Frame Frame 是帶有標題和邊框的頂層視窗。
GradientPaint GradientPaint 類提供了使用線性顏色漸變模式填充 Shape的方法。
Graphics Graphics 類是所有圖形上下文的抽象基類,允許應用程式在元件(已經在各種裝置上實現)以及閉屏影象上進行繪製。
Graphics2D 此 Graphics2D 類擴充套件 Graphics類,以提供對幾何形狀、座標轉換、顏色管理和文字佈局更為複雜的控制。
GraphicsConfigTemplate GraphicsConfigTemplate 類用於獲得有效的GraphicsConfiguration。
GraphicsConfiguration GraphicsConfiguration 類描述圖形目標(如印表機或監視器)的特徵。
GraphicsDevice GraphicsDevice 類描述可以在特定圖形環境中使用的圖形裝置。
GraphicsEnvironment GraphicsEnvironment 類描述了 Java(tm) 應用程式在特定平臺上可用的GraphicsDevice物件和 Font物件的集合。
GridBagConstraints GridBagConstraints 類指定使用 GridBagLayout 類佈置的元件的約束。
GridBagLayout GridBagLayout 類是一個靈活的佈局管理器,它不要求元件的大小相同便可以將元件垂直、水平或沿它們的基線對齊。
GridBagLayoutInfo GridBagLayoutInfo 是 GridBagLayout 佈局管理器的一個實用工具類。
GridLayout GridLayout 類是一個佈局處理器,它以矩形網格形式對容器的元件進行佈置。
Image 抽象類 Image 是表示圖形影象的所有類的超類。
ImageCapabilities 影象的功能和屬性。
Insets Insets 物件是容器邊界的表示形式。
JobAttributes 控制列印作業的屬性集合。
JobAttributes.DefaultSelectionType 可能的預設選擇狀態的型別安全的列舉。
JobAttributes.DestinationType 可能的作業目標的型別安全列舉。
JobAttributes.DialogType 顯示給使用者的可能對話方塊的型別安全列舉。
JobAttributes.MultipleDocumentHandlingType 可能的多副本處理狀態的型別安全列舉。
JobAttributes.SidesType 可能的多頁整版的型別安全列舉。
KeyboardFocusManager KeyboardFocusManager 負責管理啟用狀態的聚焦 Window 和當前焦點所有者。
Label Label 物件是一個可在容器中放置文字的元件。
LinearGradientPaint LinearGradientPaint 類提供利用線性顏色漸變模式填充 Shape的方式。
List List 元件為使用者提供了一個可滾動的文字項列表。
MediaTracker MediaTracker 類是一個跟蹤多種媒體物件狀態的實用工具類。
Menu Menu 物件是從選單欄部署的下拉式選單元件。
MenuBar MenuBar 類封裝繫結到框架的選單欄的平臺概念。
MenuComponent 抽象類 MenuComponent 是所有與選單相關的元件的超類。
MenuItem 選單中的所有項必須屬於類 MenuItem 或其子類之一。
MenuShortcut 表示 MenuItem 鍵盤加速器的 MenuShortcut 類。
MouseInfo MouseInfo 提供獲取有關滑鼠資訊的方法,如滑鼠指標位置和滑鼠按鈕數。
MultipleGradientPaint 這是 Paints 的超類,它使用多個顏色漸變來填充它們的光柵。
PageAttributes 用來控制列印頁面輸出的屬性集。
PageAttributes.ColorType 可能顏色狀態的型別安全的列舉。
PageAttributes.MediaType 可能的紙張大小的型別安全的列舉。
PageAttributes.OrientationRequestedType 可能列印方向的型別安全的列舉。
PageAttributes.OriginType 可能原點的型別安全的列舉。
PageAttributes.PrintQualityType 可能的列印質量的型別安全的列舉。
Panel Panel 是最簡單的容器類。
Point 表示 (x,y) 座標空間中的位置的點,以整數精度指定。
PointerInfo 描述指標位置的類。
Polygon Polygon 類封裝了座標空間中封閉的二維區域的描述。
PopupMenu 此類實現能夠在元件中的指定位置上動態彈出的選單。
PrintJob 啟動並執行列印作業的抽象類。
RadialGradientPaint RadialGradientPaint 類提供使用圓形輻射顏色漸變模式填充某一形狀的方式。
Rectangle Rectangle 指定座標空間中的一個區域,通過座標空間中 Rectangle 物件左上方的點 (x,y)、寬度和高度可以定義這個區域。
RenderingHints RenderingHints 類定義和管理鍵和關聯值的集合,它允許應用程式將輸入提供給其他類使用的演算法選擇,這些類執行呈現和影象處理服務。
RenderingHints.Key 定義與RenderingHints一起使用的、用來控制呈現和影象管線中各種演算法選擇的所有鍵的基本型別。
Robot 此類用於為測試自動化、自執行演示程式和其他需要控制滑鼠和鍵盤的應用程式生成本機系統輸入事件。
Scrollbar Scrollbar 類描述了一個滾動條,這是大家都很熟悉的使用者介面物件。
ScrollPane 實現用於單個子元件的自動水平和/或垂直滾動的容器類。
ScrollPaneAdjustable 此類表示 ScrollPane 的水平或垂直滾動條的狀態。
SplashScreen 在 Java 虛擬機器 (JVM) 啟動之前,可以在應用程式啟動時建立閃現螢幕。
SystemColor 封裝表示系統中本機 GUI 物件顏色的象徵性顏色的類。
SystemTray SystemTray 類表示桌面的系統托盤。
TextArea TextArea 物件是顯示文字的多行區域。
TextComponent TextComponent 類是所有允許編輯文字的元件的超類。
TextField TextField 物件是允許編輯單行文字的文字元件。
TexturePaint TexturePaint 類提供一種用被指定為BufferedImage的紋理填充 Shape的方式。
Toolkit 此類是所有 Abstract Window Toolkit 實際實現的抽象超類。
TrayIcon TrayIcon 物件表示可以新增到 系統托盤的托盤圖示。
Window Window 物件是一個沒有邊界和選單欄的頂層視窗。

介面摘要

編輯
ActiveEvent 知道如何對自身進行指派的事件的介面。
Adjustable 此介面用於那些具有可調整數值的物件,數值應包含在有限範圍的值之內。
Composite Composite 介面和CompositeContext一起定義了用基礎圖形區域組合繪圖基本元素的方法。
CompositeContext CompositeContext 介面為複合操作定義了已封裝和已優化的環境。
ItemSelectable 包含零個或多個可選則項的集合的物件介面。
KeyEventDispatcher 在指派所有 KeyEvent 和為其確定目標時,KeyEventDispatcher 和當前 KeyboardFocusManager 一起使用。
KeyEventPostProcessor 在最終解析所有未使用的 KeyEvent 時,需要將 KeyEventPostProcessor 和當前的 KeyboardFocu