標籤:cte cti 實踐教程 eric http 布局 樣本 布局管理器 als
? 著作權聲明:本文為博主原創文章,轉載請註明出處
1.按鈕(JButton)
Swing中的按鈕是JButton,它是javax.swing.AbstractButton類的子類,Swing中的按鈕可以顯示映像,並且可以將按鈕設定為視窗的預設表徵圖,而且還可以將多個映像指定給一個按鈕
JButton的常用構造方法:
JButton(Icon icon):按鈕上顯示表徵圖
JButton(String text):按鈕上顯示文字
JButton(String text, Icon icon):按鈕上即顯示表徵圖又顯示文字
JButton的常用方法:
setText(String text):設定按鈕的標籤文本
setIcon(Icon defaultIcon):設定按鈕在預設狀態下顯示的圖片
setRolloverIcon(Icon rolloverIcon):設定當游標移動到按鈕上方時顯示的圖片
setPressedIcon(Icon pressedIcon):設定當按鈕被按下時顯示的圖片
setContentAreaFilled(boolean b):設定按鈕的背景為透明,當設為false時表示透明,預設為不透明
setBorderPainted(boolean b):設定為不繪製按鈕的邊框,當設為false時表示不繪製,預設為繪製
2.選項按鈕(JRadioButton)
JRadioButton組件實現的一個選項按鈕。可以單獨使用,也可以與ButtonGroup類聯合使用,當單獨使用時,該選項按鈕可以被選定和取消選定;當與ButtonGroup聯合使用,此時使用者只能選定按鈕組中的一個選項按鈕
JRadioButton的常用方法:
setText(String text):設定選項按鈕的標籤文本
setSelected(boolean b):設定選項按鈕的狀態,預設情況下未被選中,當設為true時表示選項按鈕被選中
add(AbstractButton b):添加按鈕到按鈕組中
remove(AbstractButton b):從按鈕組中移除按鈕
getButtonCount():返回按鈕組中包含的按鈕個數
getElements():返回一個Enumeration類型的對象,通過該對象可以遍曆按鈕組中包含的所有按鈕對象
isSelected():返回選項按鈕的狀態
setSelected(boolean b):設定選項按鈕的狀態
3.案例:選中使用者喜歡的城市
3.1 項目結構
3.2 pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.swing</groupId> <artifactId>swing</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>swing</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies></project>
3.3 JRadioButtonTest.java
package org.swing.jradiobutton;import java.awt.Container;import java.awt.FlowLayout;import java.awt.GridLayout;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.BorderFactory;import javax.swing.ButtonGroup;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JRadioButton;public class JRadioButtonTest {JFrame f = null;public JRadioButtonTest() {f = new JFrame("單選框樣本");// 建立一個JFrame視窗對象Container contentPane = f.getContentPane();// 建立一個內容面板容器contentPane.setLayout(new FlowLayout());// 設定該視窗的布局JPanel p1 = new JPanel();// 建立一個面板對象p1.setLayout(new GridLayout(1, 3));// 設定布局管理器的格式p1.setBorder(BorderFactory.createTitledBorder("選擇你喜歡的城市"));// 定義3個JRadioButton選項按鈕JRadioButton r1 = new JRadioButton("北京");JRadioButton r2 = new JRadioButton("上海");JRadioButton r3 = new JRadioButton("廣州");// 建立一個按鈕組對象,將按鈕綁定成一組,實現只能選中一個ButtonGroup group = new ButtonGroup();group.add(r1);group.add(r2);group.add(r3);// 將按鈕對象添加到面板中p1.add(r1);p1.add(r2);p1.add(r3);r1.setSelected(true);// 設定r1選項按鈕的狀態為選中// 將面板對象添加到內容面板容器中contentPane.add(p1);f.pack();// 自動調節視窗大小f.setVisible(true);// 顯示視窗f.addWindowListener(new WindowAdapter() {// 添加一個視窗監聽器@Overridepublic void windowClosing(WindowEvent e) {System.exit(0);}});}public static void main(String[] args) {new JRadioButtonTest();}}
3.4 效果預覽
參考:《Java遊戲變成原理與實踐教程》
java遊戲開發之JRadioButton