?? numcomput.java
字號(hào):
import javax.swing.JFrame; //窗口類(lèi)
import javax.swing.JButton; //按鈕
import javax.swing.JLabel; //標(biāo)簽(本題中的“計(jì)算結(jié)果”幾個(gè)字)
import java.awt.FlowLayout; //流式布局
import java.awt.event.ActionEvent; //事件
import java.awt.event.ActionListener; //監(jiān)聽(tīng)器
import javax.swing.JTextField; //要輸入數(shù)字的幾個(gè)小框
import java.lang.NumberFormatException; //處理的異常類(lèi)
import javax.swing.JOptionPane; //一個(gè)對(duì)話(huà)框,即產(chǎn)生異常時(shí) 那個(gè)對(duì)話(huà)框
import javax.swing.UIManager; //風(fēng)格
public class ComputNum
{
public static void main(String args[])
{
//try--catch語(yǔ)句完全可以去掉,不用他,直接用JAVA的風(fēng)格,用他可以和你當(dāng)前的windows風(fēng)格保持一致
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e)
{
}
ComFrame exampleFrame=new ComFrame(); //初始化一個(gè)對(duì)象
}
}
//繼承NumberFormatException,并實(shí)現(xiàn)ActionListener,以便處理事件
class ComFrame extends NumberFormatException implements ActionListener
{
int number_con;
JTextField text_number_1=new JTextField("0",6); //要輸入數(shù)字的幾個(gè)小框,第一個(gè)數(shù)子,初始化為0,可以不寫(xiě)
JTextField text_number_2=new JTextField("0",6); //第二個(gè),6代表小框的大小可以放下6個(gè)數(shù)字,以下類(lèi)似
JTextField text_number_3=new JTextField(10); //這個(gè)是結(jié)果,沒(méi)有初始值。
JButton addButton=new JButton("加法"); //幾個(gè)按鈕
JButton subButton=new JButton("減法");
JButton mulButton=new JButton("乘法");
JButton divButton=new JButton("除法");
JLabel conLabel=new JLabel("計(jì)算結(jié)果"); //提示結(jié)果的標(biāo)簽
FlowLayout flowout1= new FlowLayout(FlowLayout.LEFT); //采用流式布局
JFrame myFrame=new JFrame(); //建立一個(gè)窗口/
ComFrame()
{
myFrame.setTitle("計(jì)算窗口"); //標(biāo)題
myFrame.setSize(260,100); //大小,你可以自己調(diào)整
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //關(guān)閉窗口時(shí)
myFrame.setResizable(false); //固定住窗口大小,你可以去掉,然后來(lái)回拉伸窗口大小
myFrame.getContentPane().setLayout(flowout1); //應(yīng)用布局
myFrame.getContentPane().add(text_number_1); //添加Object到窗口中,注意順序
myFrame.getContentPane().add(text_number_2);
myFrame.getContentPane().add(conLabel);
myFrame.getContentPane().add(text_number_3);
myFrame.getContentPane().add(addButton); //添加幾個(gè)按鈕到窗口
myFrame.getContentPane().add(subButton);
myFrame.getContentPane().add(mulButton);
myFrame.getContentPane().add(divButton);
addButton.addActionListener(this); //四個(gè)按鈕添加事件監(jiān)聽(tīng)器
subButton.addActionListener(this);
mulButton.addActionListener(this);
divButton.addActionListener(this);
myFrame.setVisible(true); //使窗口可見(jiàn)
}
public void actionPerformed(ActionEvent e)
{
try
{
//我為了省事,把全部的值都弄成double型的了,其實(shí)只要把除法那個(gè)弄成double,其他的應(yīng)該是int型的
//所以現(xiàn)在的結(jié)果只有小數(shù)的,你可以自己該該,很簡(jiǎn)單的。
double a=Double.parseDouble(text_number_1.getText()); //從第一個(gè)小框中獲得內(nèi)容并轉(zhuǎn)化成double型的數(shù)值
double b=Double.parseDouble(text_number_2.getText());//第二個(gè)
//四個(gè)if分別判斷鼠標(biāo)到底按了那個(gè)按鈕
if(e.getSource()==addButton)
{
text_number_3.setText(String.valueOf(a+b));//計(jì)算,并把結(jié)果再轉(zhuǎn)化成String型,在第三個(gè)小框中顯示,以下類(lèi)似
}
if(e.getSource()==subButton)
{
text_number_3.setText(String.valueOf(a-b));
}
if(e.getSource()==mulButton)
{
text_number_3.setText(String.valueOf(a*b));
}
if(e.getSource()==divButton)
{
text_number_3.setText(String.valueOf(a/b));
}
}catch(NumberFormatException ex)
{
//如果發(fā)生NumberFormatException異常,彈出一個(gè)對(duì)話(huà)框提示,并把三個(gè)小框的內(nèi)容清為空。
JOptionPane.showMessageDialog(null,"異常(NumberFormatException)發(fā)生,對(duì)不起,請(qǐng)重新輸入");
//你可以自己設(shè)置
text_number_1.setText(""); //第一個(gè)數(shù)的小框
text_number_2.setText(""); //第二個(gè)數(shù)的小框
text_number_3.setText(""); //結(jié)果的小框
}
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -