JAVA程式設計題解與上機指導 第四版 第8章 Java的圖形使用者介面設計 8.2 建立“My JFrame”
阿新 • • 發佈:2018-11-04
一、簡介:程式設計實現建立並顯示一個標題為“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 |