生活随笔
收集整理的這篇文章主要介紹了
java实用教程——组件及事件处理——ItemEvent事件(设置字体类型)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
ItemEvent事件源:
選擇框,下拉列表都可以觸發(fā)ItemEvent事件
注冊監(jiān)視器:
能夠觸發(fā)ItemEvent事件的組件使用addItemListener(ItemListener listen)
將實現ItemListener的接口的類的實例注冊為事件源的監(jiān)視器
ItemListener接口:
接口中僅有一個方法,public void itemStateChanged(ItemEvent e)
對發(fā)生事件做出處理
返回發(fā)生ItemEvent的事件源:
getSource();
getItemSelectable();
下面的例子是簡單的計算器,實現如下功能
1、用戶在窗口中的兩個文本框中輸入參與運算的兩個操作數
2、用戶在下拉列表中選擇運算符將觸發(fā)ItemEvent事件,ItemEvent事件的監(jiān)視器(operatorListener類負責創(chuàng)建)獲得運算符,并將運算符傳遞給ActionEvent事件的監(jiān)視器computer
3、用戶點擊按鈕觸發(fā)ActionEvent事件,監(jiān)視器computer(computerListener類負責創(chuàng)建)給出運算結果
設置字體:
Font font =new Font(“宋體”,Font.BOLD,22);
inputNumberOne.setFont(font);
public class Example9_8 {public static void main(String args
[]){WindowOperation win
= new WindowOperation();win
.setBounds(100,100,390,360);win
.setTitle("簡單計算器");}}
import java.awt.*;
import javax.swing.*;public class WindowOperation extends JFrame{private static final long serialVersionUID
= 3530745896462734297L;JTextField inputNumberOne
,inputNumberTwo
;JComboBox<String> choiceFuhao
;JTextArea textShow
;JButton button
;OperatorListener operator
;ComputerListener computer
;public WindowOperation(){init();setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE
);}void init(){setLayout(new FlowLayout());Font font
=new Font("宋體",Font.BOLD
,22);inputNumberOne
= new JTextField(5);inputNumberOne
.setFont(font
);inputNumberTwo
= new JTextField(5);inputNumberTwo
.setFont(font
);choiceFuhao
= new JComboBox<String>();choiceFuhao
.setFont(font
);button
= new JButton("計算");button
.setFont(font
);choiceFuhao
.addItem("選擇運算符號:");String []a
= {"+","-","*","/"};for(int i
=0;i
<a
.length
;i
++){choiceFuhao
.addItem(a
[i
]);}textShow
= new JTextArea(9,30);textShow
.setFont(font
);operator
= new OperatorListener();computer
= new ComputerListener();operator
.setJComboBox(choiceFuhao
);operator
.setWorkTogether(computer
);computer
.setJTextFieldOne(inputNumberOne
);computer
.setJTextFieldTwo(inputNumberTwo
);computer
.setJTextArea(textShow
);choiceFuhao
.addItemListener(operator
);button
.addActionListener(computer
);this.add(inputNumberOne
);this.add(choiceFuhao
);this.add(inputNumberTwo
);this.add(button
);this.add(new JScrollPane(textShow
));}}
import java.awt.event.*;
import javax.swing.*;public class OperatorListener implements ItemListener{JComboBox<String> choice
;ComputerListener workTogether
;public void setJComboBox(JComboBox<String> box
){choice
= box
;}public void setWorkTogether(ComputerListener computer
){workTogether
= computer
;}public void itemStateChanged(ItemEvent e
){String fuhao
= choice
.getSelectedItem().toString();workTogether
.setFuhao(fuhao
);}}
import java.awt.event.*;import javax.swing.*;public class ComputerListener implements ActionListener{JTextField inputNumberOne
,inputNumberTwo
;JTextArea textShow
;String fuhao
;public void setJTextFieldOne(JTextField t
){inputNumberOne
= t
;}public void setJTextFieldTwo(JTextField t
){inputNumberTwo
= t
;}public void setJTextArea(JTextArea area
){textShow
= area
;}public void setFuhao(String s
){fuhao
= s
;}public void actionPerformed(ActionEvent e
){try{double number1
= Double.parseDouble(inputNumberOne
.getText());double number2
= Double.parseDouble(inputNumberTwo
.getText());double result
=0;if(fuhao
.equals("+")){result
= number1
+number2
;}else if(fuhao
.equals("-")){result
= number1
-number2
;}else if(fuhao
.equals("*")){result
= number1
*number2
;}else if(fuhao
.equals("/")){result
= number1
/number2
;}textShow
.append(number1
+" "+fuhao
+" "+number2
+" = "+result
+"\n");}catch(Exception exp
){textShow
.append("\n請輸入數字字符\n");}}}
總結
以上是生活随笔為你收集整理的java实用教程——组件及事件处理——ItemEvent事件(设置字体类型)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。