1. Pendahuluan
1) Kalkulator ini ditulis berdasarkan antarmuka grafis AWT dalam bahasa Java. Sebenarnya, saya pikir tidak masalah fungsi apa yang diterapkannya saat menulis kalkulator ini. Pasar tidak kekurangan kalkulator ini, tetapi menggunakan operasi dan penggunaan kontrol sederhana di AWT. Dengan menghubungkan dan membiasakan diri dengan dasar-dasar AWT, meletakkan dasar untuk pembelajaran mendalam. Kalkulator ini juga memiliki fungsi yang sangat sederhana dan mudah digunakan. Namun, jika Anda tertarik, Anda dapat terus menambahkan fungsi dan meningkatkan operasi.
2) Platform Penggunaan: terutama menggunakan myeclipse2014
3) Poin Pengetahuan Utama: Dasar -dasar Java; Awt+Swing
2. Implementasi fungsi dan tampilan kode
1) Terutama itu adalah latihan tata letak tata letak, penggunaan kotak teks Artboard, dan pendaftaran dan pemantauan peristiwa tombol kontrol. Karena fungsinya juga sangat sederhana, kode disingkat menjadi kelas yang sama. Empat operasi dasar direalisasikan.
2) Kode adalah sebagai berikut:
impor java.awt.borderlayout; impor java.awt.gridlayout; impor java.awt.textfield; impor java.awt.event.actionevent; impor java.awt.event.actionlistener; impor javax.swing.jbutton; impor javax.swing.jframe; impor javax.swing.jpanel; impor java.awt.color; kelas publik jisuanji {private jframe frame; // menyatakan panel tata letak yang relevan, JPanel Panelwest; Panelcenter Jpanel Pribadi; Panelea Jpanel Pribadi; TEXFIELD TF Pribadi; Private Jbutton Buttonzero; // Deklarasikan kontrol tombol Private JBUTTON BUTTONDOT; Private Jbutton Buttonqual; Private Jbutton ButtonPLUS, ButtonMinus, ButtonMultiple, Buttondevision, Buttonsin, Buttontozero; Private Jbutton Buttonone, Buttontwo, ButtonThree, ButtonFour, ButtonFive, Buttonix, ButtonsEven, Buttonight, ButtonNine; Pendengar Private ButtonListener; // menyatakan acara mendengarkan statis public static main (string args []) {new jisuanji (); } public jisuanji () {initview (); // instantiate objek terkait setCenter (); // tata letak tambahkan kontrol dan kontrol terkait untuk menangani setWest (); seteast (); addListener (); // Setel Mendengarkan Setframe (); // Atur tata letak dan pemrosesan tampilan untuk bingkai} class tombolListener mengimplementasikan ActionListener {int biiaozhi = 0; // inisialisasi variabel terkait flag1 = 0, flag2 = 0, flag3 = 0; //@override public void actionPerformed (actionEvent e) {// (1) melalui e.getSource (), dapatkan sumber tombol dari acara klik dan buat pemrosesan yang sesuai if (e.getSource () == buttondot) {tf.setText ("0."); } if (e.getSource () == buttontozero) {tf.setText (""); } if (e.getSource () == buttonzero) {tf.setText (tf.getText ()+"0"); flag1 = double.parsedouble (tf.getText ()); } lain if (e.getSource () == tombolOne) {tf.setText (tf.getText ()+"1"); // Kotak teks ditampilkan 1, 2, 3. flag1 = double.parsedouble (tf.getText ()); } else if (e.getSource () == buttontwo) {tf.setText (tf.getText ()+"2"); flag1 = double.parsedouble (tf.getText ()); } lain if (e.getSource () == ButtonThree) {tf.setText (tf.getText ()+"3"); flag1 = double.parsedouble (tf.getText ()); } else if (e.getSource () == ButtonFour) {tf.setText (tf.getText ()+"4"); flag1 = double.parsedouble (tf.getText ()); } else if (e.getSource () == ButtonFive) {tf.setText (tf.getText ()+"5"); flag1 = double.parsedouble (tf.getText ()); } else if (e.getSource () == tombol) {tf.setText (tf.getText ()+"6"); flag1 = double.parsedouble (tf.getText ()); } else if (e.getSource () == tombol) {tf.setText (tf.getText ()+"6"); flag1 = double.parsedouble (tf.getText ()); } lain if (e.getSource () == ButtonsEven) {tf.setText (tf.getText ()+"7"); flag1 = double.parsedouble (tf.getText ()); } else if (e.getSource () == Buttoneight) {tf.setText (tf.getText ()+"8"); flag1 = double.parsedouble (tf.getText ()); } lain jika (e.getSource () == ButtonNine) {tf.setText (tf.getText ()+"9"); flag1 = double.parsedouble (tf.getText ()); } if (e.getSource () == ButtonPlus) {tf.setText (""); flag2 = flag1; biozhi = 0; } if (e.getSource () == ButtonMinus) {tf.setText (""); flag2 = flag1; biozhi = 1; } if (e.getSource () == ButtonMultiple) {tf.setText (""); flag2 = flag1; biozhi = 2; } if (e.getSource () == buttondevision) {tf.setText (""); flag2 = flag1; biozhi = 3; } if (e.getSource () == tombol) {flag3 = math.sin (flag1); tf.setText (flag3+""); } if (e.getSource () == butteronequal) {if (biaozhi == 0) {flag3 = flag2+flag1; } if (biaozhi == 1) {flag3 = flag2-flag1; } if (biaozhi == 2) {flag3 = flag2*flag1; } if (biaozhi == 3) {flag3 = flag2/flag1; } tf.setText (flag3+""); }}} private void initview () {/*** Buat bingkai, objek wadah kecil, objek tombol*/tf = Textfield baru (30); // inisialisasi antarmuka bingkai interface = jframe baru ("komputer sederhana"); panelcenter = jpanel baru (); Panelwest = jpanel baru (); paneleast = jpanel baru (); pendengar = new buttonListener (); // Instantiate objek mendengarkan} private void setCenter () {// (1) menginisialisasi nilai tampilan dari tombol kontrol = jbutton baru ("1"); buttontwo = jbutton baru ("2"); ButtonThree = JButton baru ("3"); ButtonFour = JButton baru ("4"); ButtonFive = JButton baru ("5"); tombol = jbutton baru ("6"); ButtonsEven = JButton baru ("7"); Buttonneight = JButton baru ("8"); ButtonNine = JButton baru ("9"); // (2) Set Layout Style PanelCenter.SetLayout (GridLayout baru (3,3)); // tata letak sesuai dengan konten // (3) Tambahkan tombol kontrol panelcenter.add (ButtonOne); panelcenter.add (buttontwo); PanelCenter.Add (ButtonThree); PanelCenter.Add (ButtonFour); PanelCenter.Add (ButtonFive); panelcenter.add (tombol); PanelCenter.Add (ButtonsEven); PanelCenter.Add (ButtonNeight); PanelCenter.Add (ButtonNine); } private void seteast () {// (1) Atur simbol tampilan kontrol ButtonPlus = new jbutton ("+"); ButtonMinus = new jbutton ("-"); ButtonMultiple = jbutton baru ("*"); buttondevision = jbutton baru ("/"); tombol = jbutton baru ("sin"); buttontozero = jbutton baru ("clear"); // (2) Atur paneleasst gaya tata letak.setLayout (GridLayout baru (3,2)); // (3) Tambahkan paneleasst control tombol yang sesuai (ButtonPlus); Paneleasst.add (ButtonMinus); Paneleasst.Add (ButtonMultiple); Paneleasst.Add (Buttondevision); Paneleasst.Add (Buttondevision); paneleasst.add (tombol); paneleast.add (buttontozero); } private void setWest () {// (1) inisialisasi nilai tampilan kontrol tombolzero = jbutton baru ("0"); buttondot = jbutton baru ("."); Buttonqual = JButton baru ("="); // (2) Atur tata letak untuk tiga tombol ini Panelwest.setLayout (GridLayout baru (3,1)); // (3) Tambahkan kontrol tombol pada tata letak kiri, tambahkan tiga tombol ke dalam tata letak Panelwest.Add (Buttonzero); Panelwest.Add (Buttondot); Panelwest.Add (Buttonqual); } private void addListener () {// (1) Tambahkan tombol mendengarkan untuk tombol yang sesuai dengan 1-9.AddactionListener (pendengar); buttontwo.addactionListener (pendengar); ButtonThree.addactionListener (pendengar); Buttonfour.addactionListener (pendengar); ButtonFive.addactionListener (pendengar); Buttonix.addactionListener (pendengar); Buttonseven.addactionListener (pendengar); Buttonneight.AddactionListener (pendengar); Buttonneight.AddactionListener (pendengar); ButtonNine.AddactionListener (pendengar); // (2) Tambahkan ButtonPLUS.AddactionListener (pendengar); ButtonMinus.addactionListener (pendengar); ButtonMultiple.addactionListener (pendengar); buttondevision.addactionListener (pendengar); Buttonsin.addactionListener (pendengar); buttontozero.addactionlistener (pendengar); buttontozero.addactionlistener (pendengar); // (3) dengarkan buttonzero.addactionListener (pendengar); Buttonzero.addactionListener (pendengar); buttondot.addactionListener (pendengar); Buttonqual.addactionListener (pendengar); } private void setframe () {frame.setLayout (borderlayout baru ()); // tambahkan konten dari berbagai arah yang disiapkan ke bingkai bingkai besar. frame.add (tf, borderlayout.north); Frame.Add (Panelwest, Borderlayout.west); frame.add (panelcenter, borderlayout.center); // atur warna tf.setBackground (color.green); frame.pack (); // Perluas frame frame.setlocation (500.500); // Bingkai program ada di bingkai posisi layar.setDefaultCloseOperation (jframe.exit_on_close); // Keluarlah prosesnya, tanpa menambahkan kalimat ini, tutup halaman, tetapi proses program masih menjalankan frame.setVisible (true); // Antarmuka grafis tidak terlihat secara default, setVisible menetapkan antarmuka grafis ke visible}}Pengujian kode tersedia.
3. Demonstrasi dan Efek
1) Antarmuka yang berjalan adalah sebagai berikut:
Tentu saja, ukuran dan posisi antarmuka grafis dapat disesuaikan, dan posisi dan ukurannya juga dapat diinisialisasi.
2) Tes Sederhana Empat Operasi: 11*12
Tampaknya sederhana tidak bisa lebih sederhana. Kalkulator ini ditulis untuk fokus pada koneksi tata letak dengan penggunaan tombol sederhana .
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.