Hari ini saya akan memperkenalkan kepada Anda cara menggunakan Java Swing untuk mengembangkan kalender kecil sederhana. Mari kita lihat kode di bawah ini:
Pertama -tama buat kelas kalender untuk perhitungan tanggal dasar:
paket lainnya1; impor java.util.calendar; Kalender Kelas Publik {String Day []; int tahun = 2005, bulan = 0; public void setyear (int tahun) {this.year = tahun; } public int getYear () {return tahun; } public void setMonth (int month) {this.month = bulan; } public int getMonth () {return month; } public string [] getCalendar () {string a [] = string baru [42]; Tanggal Kalender = Calendar.GetInstance (); date.set (tahun, bulan-1,1); int minggu = date.get (calendar.day_of_week) -1; int hari = 0; // menilai bulan besar jika (bulan == 1 || bulan == 3 || bulan == 5 || bulan == 7 || bulan == 8 || bulan == 10 || bulan == 12) {hari = 31; } // menilai bulan kecil jika (bulan == 4 || bulan == 6 || bulan == 9 || bulan == 11) {hari = 30; } // menilai tahun normal dan tahun kabisat jika (bulan == 2) {if (((tahun%4 == 0) && (tahun%100! = 0)) || (tahun%400 == 0)) {day = 29; } else {day = 28; }} untuk (int i = minggu, n = 1; i <minggu+hari; i ++) {a [i] = string.valueof (n); n ++; } return a; }} Kemudian buat kelas antarmuka utama untuk implementasi antarmuka:
paket lainnya1; impor java.awt.*; impor java.awt.event.*; impor javax.swing.*; CalendarFrame kelas publik memperluas JFRame mengimplementasikan ActionListener {jlabel Labelday [] = new jlabel [42]; JTextField Text = JTextField baru (10); Jbutton titlename [] = jbutton baru [7]; Jbutton button = new jbutton (); Nama string [] = {"day", "One", "Two", "Three", "Four", "Five", "Six"}; Jbutton Nextmonth, Priorsmonth; int tahun = 1996, bulan = 1; // informasi tanggal yang ditampilkan oleh Kalender Kalender Program Startup; Jlabel showmessage = jlabel baru ("", jlabel.center); Jlabel lbl1 = jlabel baru ("Silakan masukkan tahun:"); Jlabel lbl2 = jlabel baru (""); CalendarFrame publik () {Setbackground (warna baru (0, 128, 128)); Jpanel pcenter = jpanel baru (); pcenter.setBackground (warna baru (0, 139, 139)); // Atur tata letak PCenter ke tata letak Gridlayout dengan 7 baris dan 7 kolom. pCenter.setLayout (GridLayout baru (7,7)); // PCenter menambahkan komponen titlename [i] untuk (int i = 0; i <7; i ++) {titlename [i] = new jbutton (nama [i]); pcenter.add (Titlename [i]); } // pCenter menambahkan komponen labelday [i] untuk (int i = 0; i <42; i ++) {labelday [i] = new jlabel ("", jlabel.center); pcenter.add (Labelday [i]); } text.addactionListener (ini); Kalender = Kalender Baru (); Calendar.setyar (tahun); Calendar.SetMonth (bulan); String day [] = calendar.getCalendar (); untuk (int i = 0; i <42; i ++) {labelday [i] .setText (hari [i]); } nextMonth = new jbutton ("bulan depan"); Sebelumnya = Jbutton baru ("Bulan Lalu"); tombol = jbutton baru ("tentu saja"); // Daftarkan pendengar nextmonth.addactionListener (ini); Sebelumnya.addactionListener (ini); Button.addactionListener (ini); Jpanel pnorth = jpanel baru (), psouth = jpanel baru (); pnorth.add (showmessage); pnorth.add (lbl2); pnorth.add (sebelumnya); pnorth.add (nextmonth); pSouth.add (lbl1); psouth.add (teks); psouth.add (tombol); showmessage.setText ("Kalender:"+calendar.getYear ()+"tahun"+calendar.getMonth ()+"bulan"); Scrollpane scrollpane = new scrollpane (); scrollpane.add (pCenter); getContentPane (). Tambah (Scrollpane, BorderLayout.Center); // Tambahkan scrollpane di area tengah getContentPane (). Add (pnorth, borderlayout.north); // tambahkan pnorth di area utara getContentPane (). Tambah (psouth, forborlayout.south);// psouth. } public void actionPerformed (ActionEvent e) {if (e.getSource () == nextMonth) {bulan = bulan+1; if (bulan> 12) bulan = 1; Calendar.SetMonth (bulan); String day [] = calendar.getCalendar (); untuk (int i = 0; i <42; i ++) {labelday [i] .setText (hari [i]); }} lain if (e.getSource () == PrefialMonth) {bulan = bulan-1; if (bulan <1) bulan = 12; Calendar.SetMonth (bulan); String day [] = calendar.getCalendar (); untuk (int i = 0; i <42; i ++) {labelday [i] .setText (hari [i]); }} lain jika (e.getSource () == tombol) {bulan = bulan+1; if (bulan> 12) bulan = 1; calendar.setyear (integer.parseint (text.getText ())); String day [] = calendar.getCalendar (); untuk (int i = 0; i <42; i ++) {labelday [i] .setText (hari [i]); }} showmessage.setText ("Kalender:"+calendar.getYear ()+"tahun"+calendar.getMonth ()+"bulan"); }} Akhirnya, gunakan kelas untuk menyebutnya:
paket lainnya1; impor javax.swing.jframe; impor javax.swing.uimanager; kelas publik calendArmainClass {public static void main (string args []) {coba {uimanager.setLookandFeel ("com.sun.java.swing.plaf.windows.windowslookandfeel"); // Windows Interface Style} catch (Exception e) {E.PrintStackTrace (); } Calendarframe frame = calendarframe baru (); frame.setbounds (100.100.360.300); frame.settitle ("applet kalender"); frame.setLocationRelativeto (null); // Formulir dipusatkan untuk menampilkan frame.setVisible (true); frame.setDefaultCloseOperation (jframe.exit_on_close); }}Hasil operasi adalah sebagai berikut:
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.