import javax.swing.*;
創(chuàng)新互聯(lián)建站:自2013年起為各行業(yè)開拓出企業(yè)自己的“網(wǎng)站建設”服務,為千余家公司企業(yè)提供了專業(yè)的網(wǎng)站設計制作、成都網(wǎng)站制作、網(wǎng)頁設計和網(wǎng)站推廣服務, 按需制作網(wǎng)站由設計師親自精心設計,設計的效果完全按照客戶的要求,并適當?shù)奶岢龊侠淼慕ㄗh,擁有的視覺效果,策劃師分析客戶的同行競爭對手,根據(jù)客戶的實際情況給出合理的網(wǎng)站構架,制作客戶同行業(yè)具有領先地位的。
import java.awt.*;
import java.awt.event.*;
@SuppressWarnings("serial")
public class ButtonActionTest extends JFrame{
//創(chuàng)建三個文本按鈕
private JButton jb1=new JButton("Java"),
jb2=new JButton("Linux"),
jb3=new JButton("Windows");
private JToggleButton jb4=new JToggleButton("JToggleButton");
//創(chuàng)建一個文本區(qū)域
private TextField tf=new TextField(15);
public ButtonActionTest()
{
//創(chuàng)建一個監(jiān)聽器類,當單擊按鈕時獲得按鈕上的文字
class ButtonAction implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String name=((JButton)e.getSource()).getText();
tf.setText(name);
}
}
ButtonAction ba=new ButtonAction();//創(chuàng)建按鈕監(jiān)聽器
//為按鈕注冊監(jiān)聽器
jb1.addActionListener(ba);
jb2.addActionListener(ba);
jb3.addActionListener(ba);
JFrame jf=new JFrame("測試按鈕事件");//創(chuàng)建Frame容器,并設置標題
//設置按鈕的分布方式
jf.setLayout(new FlowLayout());
//將各組件添加進容器
jf.add(jb1);
jf.add(jb2);
jf.add(jb3);
jf.add(jb4);
jf.add(tf);
jb1.setToolTipText("這一個java");
jf.setSize(350,200);//設置容器大小
jf.setVisible(true);//將容器設為可視
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String args[])
{
new ButtonActionTest();
}
1、首先,設置在網(wǎng)頁中顯示文本的格式,文本的高度為100像素,寬度為280像素。
2、定義顯示文本的字體大小為22像素,離左側和右側的距離設置為自動,離頂部的距離設置為15像素。
3、用font標簽在網(wǎng)頁中插入要顯示的文本。
4、由于顯示的文本內容是動態(tài)控制的,所以設置一個標識符poemsi,用來動態(tài)表示顯示的詩句。
5、然后,在網(wǎng)頁中插入一個按鈕。
6、按鈕的高度為33像素,寬度為100像素,離左側和右側的距離為自動,離頂部的距離為20像素。
7、用type屬性,定義按鈕的類型為button。
8、定義按鈕的標簽為顯示,單擊后執(zhí)行的函數(shù)為show。
9、按鈕的背景色值為#aaeded,字體大小為20像素。
參考效果圖
參考代碼和詳細的注釋
import?java.awt.*;
import?java.awt.event.*;
import?java.util.Random;
import?javax.swing.*;
//本類繼承自JFrame,實現(xiàn)了ActionListener接口
public?class?ButtonFrame?extends?JFrame?implements?ActionListener?{
//定義常量
public?static?final?String[]?NAMES?=?{?"黃蓉",?"小龍女",?"東方不敗",?"阿珂",?"任盈盈","王語嫣","周芷若"?};
public?static?final?String?NEW_LINE?=System.getProperty("line.separator");?//獲取當前系統(tǒng)換行符
public?static?final?String?INFO="女神節(jié)快樂,隨即抽取1人領取獎勵.";
//組件
JButton?jbStart,jbClear;
JTextArea?jta;
//隨即
Random?random;
//構造方法:?組件的初始化,?排版,?窗口的設置
public?ButtonFrame()?{
random?=?new?Random();
jta?=?new?JTextArea(INFO);
jta.setLineWrap(true);//自動換行
JScrollPane?jsp?=?new?JScrollPane(jta,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
//文本區(qū)域添加到滾動面板,?垂直滾動條需要的時候出現(xiàn),?水平滾動條不需要.
add(jsp,?BorderLayout.CENTER);
JPanel?jps?=?new?JPanel();
jbStart?=?new?JButton("隨即選擇");
jbStart.addActionListener(this);//添加事件處理
jbClear?=?new?JButton("清空重置");
jbClear.addActionListener(this);
jps.add(jbStart);
jps.add(jbClear);
add(jps,?BorderLayout.SOUTH);
setTitle("窗口");//?窗口標題
setSize(280,220);//?窗口大小
setLocationRelativeTo(null);//?窗口居中
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//?當窗口關閉時,程序結束
}
//處理按鈕點擊事件
public?void?actionPerformed(ActionEvent?e)?{
JButton?jbTemp?=?(JButton)?e.getSource();?
if(jbStart==jbTemp)?{//隨即
jta.setText(INFO);//設置文字,如果不添加該行代碼,效果就是一直追加文字
jta.append(NEW_LINE);//追加換行符
int?x?=?random.nextInt(NAMES.length);
jta.append("Bingo!\t"+NAMES[x]);//追加文字
}else?if(jbClear?==?jbTemp)?{//清空重置
jta.setText(INFO);//設置文字
}
}
public?static?void?main(String[]?args)?{
new?ButtonFrame().setVisible(true);//實例化窗口并可見
}
}