Anda di halaman 1dari 16

PEMROGRAMAN JAVA MENGGUNAKAN CLASS JFRAME

I. DASAR TOERI
Java adalah bahasa pemrograman yang paling popular dalam kekuatannya dalam mendukung pemrograman berorientasi objek, yang kemudian menjadi referensi utama yang sering digunakan oleh programmer dalam membangun aplikasi berbasis OOP. Untuk lebih mempermudah implementasi pemrograman berorientasi objek tersebut, dalam java dikembangkan komponen-komponen yang memungkinkan untuk membangun aplikasi berbasis pemrograman visual dengan menggunakan objek-objek visual dalam java. Objek-objek visual java dikenal juga dengan sebutan Java GUI(Graphical User Intervace) yang disimpan dalam kelas javax.swing. Dalam praktikum ini, diperkenalkan beberapa objek-objek visual java sebagai berikut : 1. Objek JFrame, JLabel untuk membuat interface frame pada pemrograman visual 2. JButton 3. JTextField 4. JTextArea 5. JComboBox 6. JMenuBar 7. JMenuItem Kelas Abstrak pada java.io Ada 4 kelas abstrak dasar Reader Writer InputStream OutputStream
1

Reader dan Writer digunakan untuk data Teks InputStream dan OutputStream digunakan untuk data biner Diagram Kelas Writer dan Turunannya

Komponen AWT Tipe Komponen Button Canvas Checkbox CheckboxMenuItem Choice Component Deskripsi Kotak persegi panjang, menerima klik mouse digunakan untuk

Suatu panel, digunakan untuk menggambar Suatu komponen, mengijinkan user untuk memilih sebuah item Suatu checkbox di dalam menu Pilihan item dengan pull-down Parent dari semua komponen AWT, kecuali komponen Menu

Container Dialog Frame Label List Menu MenuItem Panel Scrollbar ScrollPane

Parent dari semua kontainer AWT Class dasar dari semua modal dialog-box Class dasar dari semua GUI window dengan kontrol window manager Suatu komponen text string Suatu komponen yang berisi sekumpulan dinamik dari item Suatu elemen dibawah menu bar, yang berisi sekumpulan menu item Suatu item didalam Menu Suatu class kontainer dasar, yang sering dipakai untuk membuat complex layout Suatu komponen yang mengijinkan user untuk memilih sekumpulan nilai Suatu class kontainer yang mengimplementasikan scroll horizontal & vertikal secara otomatis Suatu komponen yang mengijinkan user untuk memasuki suatu blok teks Suatu komponen yang memasuki 1 baris teks mengijinkan user

TextArea TextField Window

Suatu class dasar dari semua GUI window, tanpa kontrol window manager

II. PROGRAM
import java.awt.Color; import java.awt.Font; import java.io.FileWriter; import java.io.IOException; /* * PERBAIKAN.java * * Created on 14 Mei 2009, 14:21 */ /** * * @author Administrator */ public class PERBAIKAN extends javax.swing.JFrame { /** Creates new form PERBAIKAN */ public PERBAIKAN() { initComponents(); } private void jMenuItem18ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),2 0)); jTextArea2.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),2 0)); } private void jMenuItem17ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),1 8)); jTextArea2.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),1 8)); } private void jMenuItem16ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),1 6));

jTextArea2.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),1 6)); } private void jMenuItem15ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),1 4)); jTextArea2.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),1 4)); } private void jMenuItem14ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),1 2)); jTextArea2.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().getStyle(),1 2)); } private void jMenuItem13ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font("Calibri",Font.PLAIN,12)); jTextArea2.setFont(new Font("Calibri",Font.PLAIN,12)); } private void jMenuItem12ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font("Verdana",Font.PLAIN,12)); jTextArea2.setFont(new Font("Verdana",Font.PLAIN,12)); } private void jMenuItem11ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font("Arial",Font.PLAIN,12)); jTextArea2.setFont(new Font("Arial",Font.PLAIN,12)); } private void jMenuItem10ActionPerformed(java.awt.event.ActionEvent evt) { 5

// TODO add your handling code here: jTextArea1.setFont(new Font("Times New Romans",Font.PLAIN,12)); jTextArea2.setFont(new Font("Times New Romans",Font.PLAIN,12)); } private void jMenuItem9ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font("Comic Sans MS",Font.PLAIN,12)); jTextArea2.setFont(new Font("Comic Sans MS",Font.PLAIN,12)); } private void jMenuItem8ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setForeground(Color.BLACK); jTextArea2.setForeground(Color.BLACK); } private void jMenuItem7ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setForeground(Color.BLUE); jTextArea2.setForeground(Color.BLUE); } private void jMenuItem6ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setForeground(Color.GREEN); jTextArea2.setForeground(Color.GREEN); } private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setForeground(Color.YELLOW); jTextArea2.setForeground(Color.YELLOW); } private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setForeground(Color.RED); jTextArea2.setForeground(Color.RED); }

private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().ITALIC,12)); jTextArea2.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().ITALIC,12)); } private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: jTextArea1.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().BOLD,12)); jTextArea2.setFont(new Font(jTextArea1.getFont().getName(),jTextArea1.getFont().BOLD,12)); } private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: FileWriter simpan=null; try{ simpan=new FileWriter("c:/PERBAIKAN.txt"); jTextArea1.write(simpan); jTextArea2.write(simpan); } catch(IOException Exception){ Exception.printStackTrace(); } finally{ if(simpan!=null){ try{ simpan.close(); }catch(IOException exception){ exception.printStackTrace(); } } } } private void jButton1MouseClicked(java.awt.event.MouseEvent evt) { // TODO add your handling code here: jTextArea1.setText("NAMA : " +jTextField1.getText()+"\nNIM : " +jTextField2.getText()+"\nSEMESTER : " +jTextField3.getText() +"\nJURUSAN: "+jTextField4.getText()); jTextArea2.setText("\nHOBI : "+jComboBox1.getSelectedItem() +"\nWARNA FAVORIT :"+jComboBox2.getSelectedItem()+"\nMAKANAN 7

FAVORIT :"+jComboBox3.getSelectedItem()+"\nMINUMAN FAVORIT :"+jComboBox4.getSelectedItem()); } /** * @param args the command line arguments */ public static void main(String args[])throws Exception{ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new PERBAIKAN().setVisible(true); } }); } // Variables declaration - do not modify private javax.swing.JButton jButton1; private javax.swing.JComboBox jComboBox1; private javax.swing.JComboBox jComboBox2; private javax.swing.JComboBox jComboBox3; private javax.swing.JComboBox jComboBox4; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel10; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JLabel jLabel8; private javax.swing.JLabel jLabel9; private javax.swing.JMenu jMenu1; private javax.swing.JMenu jMenu2; private javax.swing.JMenu jMenu3; private javax.swing.JMenu jMenu4; private javax.swing.JMenu jMenu5; private javax.swing.JMenuBar jMenuBar1; private javax.swing.JMenuItem jMenuItem1; private javax.swing.JMenuItem jMenuItem10; private javax.swing.JMenuItem jMenuItem11; private javax.swing.JMenuItem jMenuItem12; private javax.swing.JMenuItem jMenuItem13; private javax.swing.JMenuItem jMenuItem14; private javax.swing.JMenuItem jMenuItem15; private javax.swing.JMenuItem jMenuItem16; private javax.swing.JMenuItem jMenuItem17; private javax.swing.JMenuItem jMenuItem18; private javax.swing.JMenuItem jMenuItem2; private javax.swing.JMenuItem jMenuItem3; private javax.swing.JMenuItem jMenuItem4; 8

private javax.swing.JMenuItem jMenuItem5; private javax.swing.JMenuItem jMenuItem6; private javax.swing.JMenuItem jMenuItem7; private javax.swing.JMenuItem jMenuItem8; private javax.swing.JMenuItem jMenuItem9; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JScrollPane jScrollPane2; private javax.swing.JTextArea jTextArea1; private javax.swing.JTextArea jTextArea2; private javax.swing.JTextField jTextField1; private javax.swing.JTextField jTextField2; private javax.swing.JTextField jTextField3; private javax.swing.JTextField jTextField4; // End of variables declaration }

III. HASIL EKSEKUSI

10

11

12

13

IV. ANALISA
Dari Praktikum pemrograman java dengan class JFrame ini dapat dianalisa bahwa pemrograman java dengan class JFrame ini adalah suatu bentuk program yang erat kaitannya dengan form. Pada praktikum kali ini, suatu JFrame didesain dengan 5 JMenu yaitu : 1. FILE yang isinya SIMPAN; 2. STYLE yang isinya BOLD dan ITALIC; 3. COLOR yang isinya 5 macam warna;

14

4. FONT yang isinya 5 macam bentuk tulisan; dan 5. SIZE yang isinya 5 macam ukuran tulisan/huruf. Desain lainnya yaitu menampilkan nama, nim, semester, dan jurusan yang diketik secara manual dalam jTextfield. Dan hobi, warna favorit, makanan favorit, dan minuman favorit yang dipilih dalam jComboBox yang pilihannya telah tersedia. Program yang dibuat ini adalah program untuk menampilkan tampilan biodata dan tampilan favorit dalam 2 jTextArea. Untuk membuat satu form memiliki dua tampilan, maka digunakan 2 jTextArea. Pada praktikum ini, program yang dibuat harus menginputkan import java.awt.Color; dan import java.awt.Font; untuk menampilkan warna(mis : merah), bentuk tulisan(mis : bold), ukuran tulisan(mis : 12) dan bentuk huruf(mis : times new roman) serta import java.io.FileWriter; dan import java.io.IOException; untuk membuat program simpan. Bila keempat import tersebut tidak dibuat, maka program akan error. Program yang dibuat untuk jMenuItem simpan dapat dilihat pada program diatas pada barisan jMenuItem1. Program untuk menu style dapat dilihat pada jMenuItem2 dan jMenuItem3, dan begitu juga seterusnya untuk menu-menu lainnya. Karena program pada praktikum ini didesain untuk menampilkan tampilan biodata dan tampilan favorit secara terpisah yaitu dalam 2 jTextArea, maka program yang dibuat untuk jMenu juga sebanyak 2 kali yaitu sekali pada jTextArea1 dan sekali lagi pada jTextArea2. Dari praktikum ini juga dapat dianalisa bahwa, pada praktikum ini, program yang dibuat hanya pada jMenu dan jMenuItem serta pada jButtom untuk menampilkan output dari tampilan biodata dan tampilan favorit. Pada jButtom, program yang dibuat juga 2 kali. Satu pada jTextArea1 untuk menampilkan tampilan biodata dan jTextArea2 untuk menampilkan tampilan favorit. Dari hasil program juga dapat dianalisa bahwa semua tampilan pada jTextArea1 dan jTextArea2 bisa disimpan dengan memilih simpan pada menu file. Hasil yang tampil pada kedua jTextArea tersebut akan tersimpan pada LocalDisk(c) dengan nama file PERBAIKAN, karena praktikan memberikan nama perbaikan pada jFrame, jika kita memilih option simpan dalam menu file.

15

Hasilnya disimpan dalam notepad, output pada notepad tersebut dapat dilihat pada hasil percobaan yang terakhir di atas.

V. KESIMPULAN
Dari semua hasil praktikum dapat disimpulkan bahwa untuk membuat program JFrame dengan tampilan warna, ukuran tulisan, bentuk tulisan dan bentuk huruf pada jMenuItem maka harus dibuat import java.awt.Color; dan import java.awt.Font; sedangkan untuk membuat program simpan harus diinputkan java.io.FileWriter; dan import java.io.IOException. Dari hasil praktikum juga dapat disimpulkan bahwa pada praktikum ini program hanya dibuat pada jMenu dan jMenuItem serta pada jButtom untuk menampilkan output saat kita menekan tombol OK. Selain itu juga dapat disimpulkan bahwa hasil yang ditampilkan dengan dua jTextArea, maka programnya juga harus dibuat 2 kali pada setiap pilihan menu dan tampil serta simpan.

16