Kamis, 08 Maret 2012

GUI JavaGNOME Pada Java

Kalau QtJambi diatas ditujukan untuk teman-teman yang sudah akrab dengan API (Application Programming Interface) Qt Framework, berbeda dengan JavaGNOME  Proyek ini lebih dikhususkan untuk teman-teman pecinta GTK atau yang paling banyak dikenal yaitu GNOME  Sama seperti GUI Toolkit SWT dan QTJambi, JavaGNOME ini juga mengakses native library tetapi API yang digunakan adalah API dari GTK. Untuk teman-teman yang sudah terbiasa membangun aplikasi menggunakan Glade, maka teman-teman bisa men-design form-nya menggunakan Glade dan memanggil-nya menggunakan bahasa java melalui JavaGNOME  Nah ingin tahu tampilan aplikasi yang dibangun menggunakan JavaGNOME ? Jika ya, silahkan cek screenshot dibawah ini : 



                                     Contoh Menu JavaGNOME                                                    

  Nah jika teman-teman ingin coba-coba membangun aplikasi menggunakan JavaGNOME, maka teman-teman harus menambahkan 1 buah library yaitu gtk-4.0.jar pada project yang akan teman-teman buat dan 1 tambahkan file libgtkjni-4.0.13.so pada direktori /usr/lib/jni di sistem teman-teman maupun pada sistem target. Dan yang perlu teman-teman ingat yaitu “PASTIKAN KEBUTUHAN SELURUH DEPENDENCIES BESERTA NOMOR VERSI LIBRARY YANG DIBUTUHKAN ITU SAMA”jika tidak bisa dipastikan ada saja masalah-nya Nah kalau teman-teman ingin tahu bagaimana source code dari tampilan menu diatas, sekarang mari kita lihat kode dibawah ini 


/*
 * java-gnome, a UI library for writing GTK and GNOME programs from Java!
 *
 * Copyright © 2007      Vreixo Formoso
 * Copyright © 2007-2010 Operational Dynamics Consulting, Pty Ltd
 *
 * The code in this file, and the program it is a part of, is made available
 * to you by its authors as open source software: you can redistribute it
 * and/or modify it under the terms of the GNU General Public License version
 * 2 ("GPL") as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GPL for more details.
 *
 * You should have received a copy of the GPL along with this program. If not,
 * see http://www.gnu.org/licenses/. The authors of this program may be
 * contacted through http://java-gnome.sourceforge.net/.
 */
package javagnomeapplication;

import org.gnome.gdk.Event;
import org.gnome.gtk.CheckMenuItem;
import org.gnome.gtk.Gtk;
import org.gnome.gtk.ImageMenuItem;
import org.gnome.gtk.Label;
import org.gnome.gtk.Menu;
import org.gnome.gtk.MenuBar;
import org.gnome.gtk.MenuItem;
import org.gnome.gtk.SeparatorMenuItem;
import org.gnome.gtk.Stock;
import org.gnome.gtk.VBox;
import org.gnome.gtk.Widget;
import org.gnome.gtk.Window;

/**
 * How to use {@link Menu} and related Widgets.
 *
 * @author Vreixo Formoso
 * @author Andrew Cowie
 */
public class ExampleSimpleMenu {

    public ExampleSimpleMenu() {
        final Window w;
        final VBox x;
        final Label l;
        final Menu fileMenu, editMenu, viewMenu;
        final MenuItem fileNew, fileMenuItem, editMenuItem, viewMenuItem;
        final MenuBar menuBar;

        /*
         * Begin with the standard VBox in a Window setup:
         */

        w = new Window();
        w.setTitle("JavaGNOME Example - ");
        x = new VBox(false, 3);
        w.add(x);

        l = new Label("Select an action in a menu");
        l.setWidthChars(30);
        l.setAlignment(0.0f, 0.5f);

        /*
         * Most applications will use several Menus in a MenuBar:
         */
        fileMenu = new Menu();
        editMenu = new Menu();
        viewMenu = new Menu();

        /*
         * Now you can add MenuItems to the "file" Menu.
         */
        fileNew = new MenuItem("_New");
        fileMenu.append(fileNew);

        /*
         * Usually you will want to connect to the MenuItem.Activate signal,
         * that is emitted when the user "activates" the menu by either
         * clicking it with the mouse or navigating to it with the keyboard
         * and pressing .
         */
        fileNew.connect(new MenuItem.Activate() {

            public void onActivate(MenuItem source) {
                l.setLabel("You have selected File->New menu.");
            }
        });

        /*
         * Given that in most cases you will connect to the MenuItem.Activate
         * signal on MenuItems, a convenience constructor is provided:
         */
        fileMenu.append(new MenuItem("_Save", new MenuItem.Activate() {

            public void onActivate(MenuItem source) {
                l.setLabel("You have selected File->Save.");
            }
        }));

        /*
         * A SeparatorMenuItem can be used to differentiate between unrelated
         * menu options; in practise, though, only use sparingly.
         */
        fileMenu.append(new SeparatorMenuItem());

        fileMenu.append(new ImageMenuItem(Stock.CLOSE, new MenuItem.Activate() {

            public void onActivate(MenuItem source) {
                l.setLabel("You have selected File->Close.");
            }
        }));
        fileMenu.append(new MenuItem("_Quit", new MenuItem.Activate() {

            public void onActivate(MenuItem source) {
                Gtk.mainQuit();
            }
        }));

        /*
         * And now add the items making up the "edit" Menu.
         */
        editMenu.append(new MenuItem("_Copy", new MenuItem.Activate() {

            public void onActivate(MenuItem source) {
                l.setLabel("You have selected Edit->Copy.");
            }
        }));
        editMenu.append(new MenuItem("_Paste", new MenuItem.Activate() {

            public void onActivate(MenuItem source) {
                l.setLabel("You have selected Edit->Paste.");
            }
        }));

        /*
         * CheckMenuItems hold a boolean state. One use is to allow users to
         * hide some parts of the GUI, as in this example which we put into
         * the "view" Menu:
         */
        viewMenu.append(new CheckMenuItem("Hide _text", new CheckMenuItem.Toggled() {

            public void onToggled(CheckMenuItem source) {
                if (source.getActive()) {
                    l.hide();
                } else {
                    l.show();
                }
            }
        }));

        /*
         * A MenuItem can have a "sub-menu", that will be expanded when the
         * user puts the mouse pointer over it. This is also used in creating
         * the elements for the top level MenuBar, but you can use it within
         * normal Menus as well. That said, submenus of Menus are considered
         * less "discoverable" because the user has to navigate through the
         * hierarchy to find out what options are available to them, rather
         * than seeing them at first glance.
         */
        fileMenuItem = new MenuItem("_File");
        fileMenuItem.setSubmenu(fileMenu);
        editMenuItem = new MenuItem("_Edit");
        editMenuItem.setSubmenu(editMenu);
        viewMenuItem = new MenuItem("_View");
        viewMenuItem.setSubmenu(viewMenu);

        /*
         * Finally, most applications make use of a MenuBar that is by
         * convention located at the top of the application Window. It
         * contains the top-level MenuItems.
         */
        menuBar = new MenuBar();
        menuBar.append(fileMenuItem);
        menuBar.append(editMenuItem);
        menuBar.append(viewMenuItem);

        /*
         * Finally, pack the Widgets into the VBox, and present:
         */
        x.packStart(menuBar, false, false, 0);
        x.packStart(l, false, false, 0);

        w.showAll();

        /*
         * And that's it! One last piece of house keeping, though: it is
         * always necessary to deal with the user closing (what is in this
         * case) the last Window in the application; otherwise the Java VM
         * will keep running even after the (sole) Window is closed - because
         * the main loop never returned.
         */
        w.connect(new Window.DeleteEvent() {

            public boolean onDeleteEvent(Widget source, Event event) {
                Gtk.mainQuit();
                return false;
            }
        });
    }

    public static void main(String[] args) {
        Gtk.init(args);

        new ExampleSimpleMenu();

        /*
         * Yes, you could have written all the Window creation code here in
         * main() but it is generally good practise to put that setup into a
         * constructor, as we have here.
         */

        Gtk.main();
    }
                                                                                           sumber: http://dediknurdiantoro.blogspot.com
 
 

Komponen Swing

Swing toolkit menyediakan banyak sekali komponen untuk
membangun aplikasi GUI desktop. Swing toolkit juga menyediakan
class-class untuk menangani interaksi antara aplikasi dan user
menggunakan standard input seperti keyboard dan mouse.
Komponen-komponen yang disediakan swing mencakup semua GUI
toolkit yang lazim digunakan dalam apilasi desktop, seperti : JTabel,
JList, JTree, JButton, JLabel dan masih banyak komponenkomponen
lainnya yang sudah teruji dan siap pakai.
Selain komponen GUI, swing juga menyediakan fasilitas untuk
proses undo, komponen untuk mengolah text, internationalization,
Komponen GUI yang mendukung penyandang cacat (accessibility
support) dan fasilitas drag-and-drop.
Look and Feel merupakan fasilitas yang unik dalam swing. Dengan
fasilitas Look and Feel ini kita bisa dengan mudah merubah
tampilan dari program kita sesuai dengan keinginan dan tujuan
kita. Misalnya, agar program terlihat fancy atau agar program
terlihat konsisten dalam segala keadaan.
Swing juga menyediakan library Java 2D untuk pengolahan data
secara visual, seperti mengolah gambar, object 2D, bahkan animasi.
SwingLabs.org menyediakan libary Swing Painter yang merupakan
pengembangan dari Java 2D, Swing Painter ini memungkinkan
aplikasi swing mempunyai tampilan yang indah dan terlihat
profesional.
Java 6.0 menambahkan banyak sekali fitur-fitur baru ke dalam
package swing, termasuk dukungan untuk library OpenGL
menggunakan JOGL, Tray Icon dan Web Service. Dengan adanya
dukungan ini swing menjadi lebih poweful dan mempunyai masa
depan yang cerah.

Java Ekripsi dan Deskripsi

Aplikasi ini merupakan aplikasi yang akan saya ajukan pada penulisan ilmiah. Aplikasi ini dapat didownload secara gratis, untuk membantu memprotect file anda. Jika anda akan gunakan untuk memprotect file anda, maka anda akan diminta memasukkan sederetan kunci (password) untuk menjamin kerahasian anda.

Contoh Enkripsi dan Deskripsi :
mport javax.swing.*;
import java.awt.*;
import java.io.*;
import java.awt.event.*;
public class Enkripsi extends JFrame{
static String teks=”";
private JLabel LabelPesan=new JLabel(“Pesan:”);
private static JTextField TeksImputan=new JTextField(40);
private JLabel LabelPergeseran=new JLabel(“Pergeseran”);
private static JTextField TeksPergeseran=new JTextField(“2″);
private JLabel LabelEnkripsi=new JLabel(“Hasil Enkripsi:”);
private static JTextField TeksHasilEnkripsi=new JTextField(40);
private JButton TombolEnkripsi=new JButton(“Enkripsi”);
private JButton TombolReset=new JButton(“Reset”);
private JPanel PanelPesan_Label=new JPanel();
private JPanel PanelTombol=new JPanel();
public Enkripsi(){ //mengatur GUI
PanelTombol.setLayout(new GridLayout(6,1,30,10));
PanelTombol.add(LabelPesan);
TeksImputan.setToolTipText(“Isi pesan yang akan dienkripsi di sini”);
PanelTombol.add(TeksImputan);
PanelTombol.add(LabelPergeseran);
TeksPergeseran.setToolTipText(“Masukkan pergeseran di sini”);
PanelTombol.add(TeksPergeseran);
PanelTombol.add(LabelEnkripsi);
TeksHasilEnkripsi.setToolTipText(“Anda tidak perlu mengisi bagian ini. Bagian ini akan terisi setelah Anda melakukan enkripsi.”);
PanelTombol.add(TeksHasilEnkripsi);
setLayout(new FlowLayout(FlowLayout.LEFT,10,10));
add(PanelTombol);
TombolEnkripsi.setToolTipText(“Klik untuk melakukan enkripsi pesan”);
PanelPesan_Label.add(TombolEnkripsi);
TombolReset.setToolTipText(“Klik untuk menghapus semua pesan”);
PanelPesan_Label.add(TombolReset);
setLayout(new FlowLayout(FlowLayout.CENTER));
add(PanelPesan_Label,BorderLayout.SOUTH);
TombolEnkripsi.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
try
{
int pergeseran=Integer.valueOf(TeksPergeseran.getText());
if(pergeseran>0 && pergeseran0){
for(int i=0;i=48 && kode_ASCII=65 && kode_ASCII=97 && kode_ASCII=33 && kode_ASCII=58 && kode_ASCII=91 && kode_ASCII=123 && kode_ASCII<=126)
ArrayHuruf[i]=(char)((kode_ASCII-123+pergeseran)%4+123);
}
}
teks=String.valueOf(ArrayHuruf);
}
else{
JOptionPane.showMessageDialog(null,”Error!!\nMasukkan pesan yang akan dienkripsi dulu”,”ERROR”,JOptionPane.ERROR_MESSAGE);
}
return teks;
}
}

Kamis, 22 September 2011

SIKAP ADALAH SEGALANYA

Proses perubahan umat manusia bermula dalam diri kita. Kita semua memiliki potensi raksasa. Kita semua ingin medapatkan hasil yg baik dari usaha kita. Kebanyakan mau bekerja keras dan membayar harganya untuk hal-hal yg dipersyaratkan oleh sebuah sukses dan kebahagiaan.
Masing-masing kita mampu meletakkan potensi manusiawi kita yg unik menjadi tindakan yg diperlukan untuk memperoleh hasil yg diinginkan. Nanum satu hal yg menentukan tingkat potensi kita, yang menghasilkan intensitas kegiatan kita, dan menetapkan mutu dari hasil yg kita terima adalah sikap kita.
Sikap menentukan seberapa banyak masa depan kita dapat kita lihat. Sikap itu menentukan besarnya cita-cita kita dan mempengaruhi ketetapan hati kita ketika kita menghadapi tantangan- tantangan. Tak ada orang lain di muka bumi ini yg dapat menjajah sikap kita. Orang dapat mempengaruhi sikap kita dengan mengajarkan kita ttg kebiasaan-kebiasaan berpikiran rendah atau secara tidak sengaja memberikan informasi yg salah atau memberikan sumber-sumber pengaruh yg negatif, namun tak seorangpun yg dapat mengendalikan sikap kita kecuali jika kita dengan rela menyerah pada kendali tersebut.
Tak ada orang lain yg “membuat kita marah.” Kita membuat diri sendiri marah ketika kita menyerahkan kendali sikap kita. Apa yg telah dilakukan orang lain tidaklah relevan. Kitlah yg memilih, bukan mereka. Mereka hanya menguji sikap kita. Jika kita memilih sikap meledak-ledak dengan menjadi bermusuhan, marah, cemburu atau curiga, maka kita gagal dalam ujian itu.
Jika kita menyalahkan diri sendiri dengan mempercayai bahwa diri kita tak ada harganya, lagi-lagi, kita gagal dalam ujian.
Apabila kita peduli terhadap segala hal mengenai diri kita sendiri, maka kita harus menerima tanggung jawab sepenuhnya terhadap perasaan kita sendiri. Kita mesti belajar menjaga terhadap perasaan-perasaan yg akan menjerumuskan sikap kita ke jalan yang salah dan harus memperkuat perasaan-perasaan yg akan mengarahkan dengan pasti ke masa depan kita yg lebih baik.
Jika kita ingin menerima imbalan masa depan dengan pasti bagi diri kita, maka kita harus melaksanakan pilihan terpenting yg diberikan pada kita sebagai bagian dari umat manusia dengan menjaga semua wilayah sikap kita.
Sikap kita adalah sebuah asset, harta karun yg tak ternilai harganya, yg harus dilindungi benar-benar dengan semestinya. Hati-hatilah pada perusak dan pencuri yg ada di antara kita yg akan merusak sikap positif kita atau berusaha mencurinya.
Memiliki sikap yg benar adalah salah satu dari hal dasar yg dipersayaratkan tercapainya keberhasilan atau sukses. Kombinasi dari filosofi pribadi dan sikap yg positif mengenai diri sendiri serta terhadap dunia di sekitar kita akan memberikan tenaga dalam serta ketetapan kuat yg akan mempengaruhi hal-hal lain dalam hidup eksistensi kita.

LANGKAH-LANGKAH MENGINSTALL JCREATOR

Dalam menginstall sebuah program jcreator kita memerlukan sebuah installasi jdk atau Java Development Kit dan Java API Documentation baru kemudian menginstall Jcreator itu sendiri. Dibawah ini akan dijelaskan langkah-langkah menginstall Java Development Kit atau JDK, Java API Documentation dan Jcreator.

A.     Langkah-langkah Menginstal Java Development Kit 6 Update 21 atau JDK:
  
Download jdk atau java development kit versi terbaru yaitu jdk 6 update 21 untuk mengembangkan aplikasi java di jcreator di http://java.sun.com/javase/downloads.

Kemudian installasi jdk lalu akan tampil gambar seperti dibawah ini dan pilih next untuk melanjutkan proses installasi jdk.


Setelah klik tombol next maka akan muncul gambar seperti dibawah ini yaitu gambar untuk meletakkan proses installasi jdk di dalam folder destinationnya dan lansung saja klik next untuk melanjutkkannya tetapi jika kita ingin mengubah folder destinationnya maka kita klik change.


Selesai klik tombol next maka proses installasi jdk akan berlangsung dan sebagai akhir dari proses intallasi klik finish. 


B.Langkah-langkah Menginstall Java API Documentation:

Download Java API Documentation dalam bentuk zip di http://java.sun.com/javase/downloads.

Kemudian extract file dan muncul gambar tempat folder destination untuk di extract, pilih ok untuk melanjutkannya.
Setelah pilih ok kita tinggal menunggu proses extracting selesai.


C. Langkah-Langkah Menginstall Jcreator:

Pertama jalankan program JCreator yang sudah kita download di http://jcreator.com.


Klik tombol next, maka akan muncul gambar seperti dibawah ini.


Klik I accept the agreement, kemudian tekan tombol next. Setelah itu akan muncul gambar seperti berikut. Pilih next saja, karena itu destinasi installation dari JCreator secara default. Klik OK jika muncul layar konfirmasi.



   Klik next, untuk membuat Start Menu Folder, lalu maka akan muncul tampilan sebagai berikut.

Jika kalian ingin menyertakan shortcut, maka klik Create a desktop icon, selanjutnya tekan next.

Jika sudah, klik install, tunggu hingga proses instalasi selesai

TUTORIAL DASAR PEMROGRAMAN JAVA BERBASIS GUI MENGGUNAKAN NETBEANS

1. INSTALASI NETBEANS
Untuk menginstall Netbeans Anda harus punya DVD nya yang bisa didapat dengan Cuma-Cuma dari NetBeans.org (tergantung keberuntungan) tinggal dipesan aja via Internet lalu Anda akan menerima DVDnya langsung ke tangan Anda dalam sekejab (nunggu beberapa hari/gak sampe berminggu-minggu), lebih gampang 1agi Anda silahkan unduh dari netbeans.org hanya beberapa menit kalau kamu punya bandwith Internet Connection yang tinggi. Setelah Anda punya package nya silahkan install aja sendiri, boleh juga ditemani pacar, teman, saudara, oppung, nenek, atho’ dan lain-lain….hehe…:))
baca selengkapnya……….click di
Sebagai catatan, dalam tutorial ini penulis menggunakan NetBeans IDE 6.0 dan JDK 1.6 yang sudah terintegrasi langsung pada netbeans, Sistem Operasi Windows XP SP2 (comment: ternyata penulis masih doyan produk microsoft: sekarang ini sedang migrasi ke Linux: Ubuntu, sedang dicoba, Slackware12 pernah dicoba agak payah bagi pemula, OpenSuse lumayan enak dengan Yast nya. Kini juga sedang mencoba FreeBSD dan Solaris… masih coba-coba terus)
2. MEMULAI NETBEANS
Yang pasti kalo kamu pake SO dari keluarga Microsoft, ada shortcut nya di desktop kamu, ya tinggal di double click aja terus nunggu sambil minum coffeemix
3. MEMBUAT PROJECT BARU
Nih stepnya, ikuti saja (bahasanya/kalimatnya akag aneh, maklum….):
- Pilih File
- New Project
javagui01.jpg
- Pada Category: pilih Java
- Pada Projects: pilih Java Application
- Kemudian Click tombol Next
javagui02.jpg
- Pada Project Name: ketik nama project misalnya prjPaletteButton
- Pada Project Locaton: click Browse untuk memilih folder diaman Anda akan menyimpan project
- Checklist pada Set as Main Project
- Checklist juga apda Create Main Class
- Kemudian click Finish, maka hasilnya akan tampak seperti di bawah ini:
4. MEMBUAT FORM
- Click kanan pada nama project Anda disisi sebelah kiri yang ada pada Project Explorer
javagui04.jpg
- Pilih JFrame Form
- Kemudian pada Class Name : ketik nama form misal frmButton
- Pada Location : pilih Sources Packages (ini pilihan default)
- Pada Package : pilih prjpalletbutton (sesuai nama project)
- Setelah itu click Finish
5. MENAMBAHKAN CODE PROGRAM PADA MAIN.JAVA
Karna pada saat membuat project pertama sekali dichecklist pada Creat Main Class dan Set as Main Project, maka yang selalu dijalankan pertama sekali ketika program di run adalah main.java, dari program inilah dipanggil form frmButton (nama form / class name), bagaimana caranya?:
- Buka Code main.java dengan mengclick pada tab Main.java yang ada di bawah toolbar
javagui05.jpg
- Kemudian tambahkan code pada class utama (class main)
public static void main (String[] args) {
//TODO code application logic here
new frmButton().setVisible(true);
}
Lihat gambar dibawah ini:


- Setelah itu coba jalankan program Anda dengan menekan tombol F6
Atau click tombol ?yang terdapat pada toolbar
- Lalu akan tampil form yang masih kosong, click pada sudut form (x) untuk menutup form yang sedang running dan kembalilah edit form Anda dan tambahkan beberapa palette (bacanya bukan pelet tetapi pælet) (di visual basic disebut toolbox) sesuai dengan kebutuhan Anda
- Sekarang lanjutkan mengedit form Anda
6. MENAMBAH PALETTE PADA FORM
Ada banyak palette yang dapat Anda tambahkan pada form sesuai kebutuhan program Anda, pada project Anda biasanya jendela palette terletak di sebelah kanan layar Anda, lihat gambar dibawah ini perhatikan garis merahnya (comment:sebaiknya di jelaskan di awal ?):
javagui06.jpg
DAFTAR PALETTE
- Swing Control:
o Label
o Button
o Toggle Button
o Check Box
o Radio Button
o Button Group
o Combo Box
o List
o Text Field
o Text Area
o Scroll Bar, banyak lagi (lihat saja gambar di atas)
Sekarang bagaimana cara menambahkan palette tersebut ke form, gampang aja pada dasarnya sama dengan ketika Anda menggunakan bahasa pemrograman visual lainnya, tinggal click pada palette yang kamu butuhkan dan drag, kemudian letakkan pada form.
Atau boleh juga dengan mengclick sekali pada palette dan bawa mouse Anda ke area form maka palette yang Anda click tadi akan tampil, sekarang Anda tinggal click sekali pada area form dimana Anda akan meletakkan objek palette tersebut.
Sebagai contoh lihat gambar di bawah ini:
javagui07.jpg
- Arahkan mouse pada palette Label, Click sekali(jangan ditahan, click biasa aja)
- kemudian Arahkan mouse Anda pada area form (lihat posisinya disesuaikan) lalu click sekali, pallete Label akan tampak pada form Anda
- kemudian ubah bacaan jLabel1 (caption di VB) menjadi Nilai Tugas, caranya:
o click kanan pada objek label
o pilih Edit Text
javagui08.jpg
o lalu ketik judul yang baru (Nilai Tugas) dan click OK
o Anda dapat merubah ukuran objek dengan mengclick pada titik-titik yang ada di setiap sisi dan sudut objek yang sedang Anda edit (objek yang aktif)
- kemudian ubah nama objek, biasanya disesuaikan dengan jenis palette yang Anda gunakan misalnya kalau label, maka nama objek biasanya diawali dengan lbl misal lblNilaiTugas, kalau button penamaannya biasanya diawali dengan btn, misalnya btnClose. Dll, bagaimana cara merubah nama palette:
? click kanan pada palette yang akan Anda rubah namanya
? pilih Change Variable Name
? kemudian ketik nama Variable Namenya, misal lblNilaiTugas, lihat gambar:
javagui09.jpg
? click Ok
? Anda dapat melakukan perubahan Variable Name atau yang lainnya (properties) melalui jendela Properties:
javagui10.jpg
o Selanjutnya kalau Anda mau menambahkan palette yang sama boleh saja kamu copy paste lalu rubah Text, Variable Name dan lain-lain sesuai kebutuhan. Kemudian…. kemudian… dan selanjutnya kerjakan kasus dibawah ini
7. KASUS 1
Lengkapilah form Anda seperti dibawah ini
javagui11.jpg
Catatan:
- Jika project dijalankan, maka form yang tampil adalah seperti yang Anda lihat diatas
- Pertama sekali textfield tidak dapat di isi/diclick dan tombol New, Save, Show, hanya tombol Close dan Release Array saja yang dapat di Click
- Fungsi tombol:
o Release Array ?
apabila di click berarti mengalokasikan variabel Array dengan jumlah row data yang baru, dengan mengclick tombol ini, maka tombol New dan Show akan aktif sementara tombol Save belum aktif
javagui12.jpg
Setelah Anda ketik jumlah data lalu click OK, maka tombol New akan aktif

o New ?
apabila di click maka semua textfield menjadi aktif dan bernilai kosong, kemudian cursor akan aktif pada txtNT (text nilai tugas), kemudian tombol Save akan aktif dan tombol New dan tombol Show malah tidak aktif. Dan akan tampil nomor data yang akan di isi pada label Data Ke :

o Save ?
hanya dapat di click setelah tombol New di click, tombol ini akan menyimpan data yang ada pada textfield ke Array yang sudah didefenisikan sebelumnya sesuai urutan row, apabila salahsatu textfield masih kosong maka penyimpanan tidak dikerjakan dan cursor akan kembali ke textfield (jadi ada validasi textfield)
javagui13.jpg
o Show ?
untuk menampilkan data sesuai dengan permintaan data keberapa yang akan di tampilkan kembali ke textfield, ketika Anda click tombol ini akan tampil inputbox:
javagui14.jpg
Ketiklah nomor record yang akan Anda tampilkan ke textfield form
Setelah Anda click OK, maka akan tampil data dari Array yang sudah tersimpan, jika Anda masukkan angka 1 maka data yang akan tampil adalah yang ada pada Index Array 0, jika Anda input dengan jumlah yang melebihi Array, maka akan ditampilkan data 1 (array 0)
o Close ?
menutup Form atau keluar dari aplikasi.
8. MENYELESAIKAN KASUS 1
- setelah Anda melengkapi object yang dibutuhkan pada form, diantaranya:
Kelompok Label:
- label yang perlu dirubah hanya text(caption nya saja) , disesuaikan (lihat form diatas)
Kelompok TextField :
Variable Name | Keterangan
txtNT : jenis palette TextField, Variable Name untuk menampung Nilai Tugas yang di input dari keyboard
txtNF : jenis palette TextField, untuk menampung Nilai Formatif
txtNUTS : jenis palette TextField, Nilai UTS
txtNUAS : jenis palette TextField, Nilai UAS
txtNRata : jenis palette TextField, Nilai Rata-Rata, tidak di input langsung dari keyboard, melainkan melalui proses setelah tombol Save di click
Kelompok Button:
btnNew : jenis palette Button, judul text New, shortcut:N
btnSave : jenis palette Button, judul text Save, shortcut:S
btnShow : jenis palette Button, judul text Show, shortcut:O
btnRelease : jenis palette Button, judul text Release Array, shortcut:R
btnClose : jenis palette Button, judul text Close, shortcut:C
- Sekarang Anda lengkapi Code program untuk setiap objek sesuai dengan kebutuhan
- frmButton (form utama Anda),
pada awal program kenalkan dulu beberapa variabel yang akan digunakan secara public di seluruh form:
public int[][] Nilai;
public int datake;
lihat gambar dibawah ini:
javagui15.jpg
Kemudian tambahkan code program pada Events Window Opened, agar apabila form ini dipanggil/dijalankan dari main.java, maka ketika pertama sekali tampil dilayar code program pada windowOpened dijalankan hanya sekali saja, cara membuat code nya:
o dalam mode Design/Click bebas pada area form yang kosong (aktifkan objek yang akan di isi code programnya)
o Kemudian perhatikan, bawa mouse pointer Anda ke jendela properties
o Pada Properties pilih tab menu Events, lihat gambar di bawah ini
javagui16.jpg
o Jika Anda belum melihat properti windowsOpened, geser scroll yang ada di sebelah kanan jendela properties ke bawah, lalu Seperti pada gambar di atas, click properties windowOpened pada kolom Value nya.
o Pada value yang tadinya bernilai akan berubah menjadi formWindowOpened
o Kemudian Anda tekan panah ke bawah, maka akan tampil jendela code untuk event tersebut, lihat gambar dibawah ini:
javagui17.jpg
o Lalu sediakan baris kosong dan ketik code programnya, lihat gambar di atas.
o Code programnya :
this.setTitle(“Form Data Nilai”); //membuat judul form
this.setSize(350, 360); //mengatur ukuran form
this.setLocationRelativeTo(null);
this.setVisible(true);
// semua textfield dikunci saat form dubuka/dipanggil dari main.java
txtNT.setEnabled(false);
txtNF.setEnabled(false);
txtNUTS.setEnabled(false);
txtNUAS.setEnabled(false);
txtNRata.setEnabled(false);
btnSave.setEnabled(false);
btnNew.setEnabled(false);
btnShow.setEnabled(false);
// semua tombol diset shortcut nya
btnNew.setMnemonic(‘N’);
btnSave.setMnemonic(‘S’);
btnShow.setMnemonic(‘O’);
btnClose.setMnemonic(‘C’);
btnRelease.setMnemonic(‘R’);
// pointer difokuskan pada btnRelease
btnRelease.requestFocus();
- btnRelease :
event nya adalah ActionPerformed (sama dengan click), boleh dengan double click pada buttonnya atau mengikuti langkah pada frmButton. Adapun code programnya adalah :
// alokasikan array Nilai sebanyak yang dibutuhkan
/* oleh karena JoptionPane.showInputDialog menghasilkan nilai string,
Maka dikonversi ke integer menggunakan perintah Integer.parseInt berfungsi
mengkonversi data yang di input menjadi data angka Integer dan
disimpan kedalam variable JumlahData
*/
int JumlahData=Integer.parseInt(JOptionPane.showInputDialog(null,”Masukkan Jumlah Data?”,”5″));
/*
Jangan lupa aktifkan dulu library javax.swing.JoptionPane,
Pada awal code pada form, posisinya kira-kira dibawah package namapackageanda;
Ketikkan code berikut: import javax.swing.JOptionPane;
jika tidak Maka pada saat anda selesai mengetik int JumlahData dst…. pada nomor baris disebelah kiri anda akan tampil gambar bola lampu kuning dan tanda merah tanda seru, itu artinya library harus di aktifkan.
Untuk mengaktifkan kamu boleh saja mengclick pada gambar bola lampu tersebut, kemudian pilih Add import for javax.swing.JOptionPane
javagui18.jpg
javagui19.jpg
*/
// Alokasikan index array Nilai
Nilai=new int[JumlahData][4]; //JumlahData adalah jumlah row,4 adlh jlh kolom
datake=0;
btnSave.setEnabled(false);
btnNew.setEnabled(true);
btnShow.setEnabled(true);
- btnNew : ActionPerformed
//tambahkan nilai array
datake=datake+1;
// deteksi apabila jumlah array yang didefenisikan rownya sudah terisi
// Nilai.length berfungsi mendeteksi jumlah row array
if (datake>Nilai.length)
JOptionPane.showMessageDialog(null,”ups… aray yang didefenisikan tidak
cukup maksimum row :”+Nilai.length);
else {
lblDataKe.setText(“Data Ke :”+(datake));
// set agar textfield dan tombol dapat
// diakses, mirip properti enabled pada vb
btnSave.setEnabled(true);
btnNew.setEnabled(false);
btnShow.setEnabled(false);
btnClose.setEnabled(false);
txtNT.setEnabled(true);
txtNF.setEnabled(true);
txtNUTS.setEnabled(true);
txtNUAS.setEnabled(true);
txtNRata.setEnabled(true);
//kosongkan isi textfield
txtNT.setText(“”);
txtNF.setText(“”);
txtNUTS.setText(“”);
txtNUAS.setText(“”);
//meletakkan cursor aktif pada textfield txtNT
txtNT.requestFocus();
}
- btnSave : ActionPerformed
// validasi data
String nt=txtNT.getText();
String nf=txtNF.getText();
String nut=txtNUTS.getText();
String nus=txtNUAS.getText();
// deteksi kalau masih ada textfield yang belum di isi
if ((nt.isEmpty()) | (nf.isEmpty()) |(nut.isEmpty()) | (nus.isEmpty()))
{
JOptionPane.showMessageDialog(null,”Masih ada nilai yang kosong, silahkan dilengkapi”);
txtNT.requestFocus();
}
else {
// simpan data ke array
Nilai[(datake-1)][0]=Integer.parseInt(txtNT.getText());
Nilai[(datake-1)][1]=Integer.parseInt(txtNF.getText());
Nilai[(datake-1)][2]=Integer.parseInt(txtNUTS.getText());
Nilai[(datake-1)][3]=Integer.parseInt(txtNUAS.getText());
// semua textfield dikunci
txtNT.setEnabled(false);
txtNF.setEnabled(false);
txtNUTS.setEnabled(false);
txtNUAS.setEnabled(false);
btnSave.setEnabled(false);
btnNew.setEnabled(true);
btnShow.setEnabled(true);
btnClose.setEnabled(true);
}
- btnShow : ActionPerformed
int JumlahData=Integer.parseInt(JOptionPane.showInputDialog(null,”Masukkan
Nomor Row/Record Data?”,”1″));
//deteksi kalau data yang ditampilkan melewati batas row array
if ((JumlahData>Nilai.length) | (JumlahData<=0))
JumlahData=1;
lblDataKe.setText(“Data Ke :”+(JumlahData));
txtNT.setText(new Integer(Nilai[(JumlahData-1)][0]).toString());
txtNF.setText(new Integer(Nilai[(JumlahData-1)][1]).toString());
txtNUTS.setText(new Integer(Nilai[(JumlahData-1)][2]).toString());
txtNUAS.setText(new Integer(Nilai[(JumlahData-1)][3]).toString());
- btnClose :ActionPerformed
// boleh menggunakan dispose(); , hanya menutup form yang sedang aktif
System.exit(0); //keluar dari program aplikasi secara keseluruhan
TUGAS (KERJASAMA KELOMPOK DISKUSI):
  1. DARI PROGRAM DI ATAS ANTA TAMBAHKAN PROSES UNTUK MENGHITUNG NILAI RATA-RATA… TENTUNYA VARIABEL NYA MERUPAKAN JENIS DATA FLOAT KARENA HASIL NYA DALAM BENTUK DESIMAL MISALKAN NILAI RATA : 80,50
  2. TAMBAHKAN LABEL YANG AKAN MENAMPILKAN NILAI DALAM HURUF, BERDASARKAN NILAI RATA-RATA YANG DIDAPAT:
a. JIKA NILAI RATA-RATA >=85, MAKA AKAN TAMPIL PADA LABEL NILAI HURUF A
b. 70 S/D <85 NILAI HURUF B
c. 60 S/D <70 NILAI HURUF C
d. 45 S/D <60 NILAI HURUF D
e. <45 NILAI HURUF E

3 Top Best Java IDE (Integrated Development Environment)

3 Top Best Java IDE (Integrated Development Environment) ImageDalam melakukan pemrograman dibutuhkan alat atau tools yang biasa di sebut dengan IDE (Integrated Development Environmnet) untuk memudahkan kita dalam melakukan pengembangan atau pembuatan program.
Di java sangat banyak IDE yang tersedia, dan hampir semuanya dapat di gunakan dengan gratis tanpa harus membeli lisensi. Namun dari sekian banyaknya IDE yang tersedia, tentunya hanya beberapa saja IDE yang memiliki fitur serta dukungan komunitas yang maksimal.
Berikut ini adalah 3 Java IDE terbaik menurut saya selama 5 tahun berkecimpung di dunia pemrograman java.
  • Eclipse
3 Top Best Java IDE (Integrated Development Environment) Image
IDE ini awalnya dimiliki dan dibuat oleh IBM, seiring perkembangan zaman, IBM memberikannya kepada komunitas untuk di kembangkan lebih lanjut. Eclipse memiliki dukungan plugin yang sangat banyak, dan menjadi core dari pengembangan IDE lainnya seperti zend studio(IDE berbayar untuk PHP), aptana radrails(IDE untuk pemrograman ruby on rails), serta masih banyak yang lainnya. Sekarang eclipse tidak hanya dapat digunakan untuk melakukan pemrograman java, namun juga tersedia untuk php, c++ dan lainnya. Anda dapat mengunjungi situsnya eclipse untuk mengetahui perkembangan IDE ini.
3 Top Best Java IDE (Integrated Development Environment) Image
IDE ini dibuat menggunakan bahasa Java, sehingga sangat terlihat dari sisi pemakaian memory yang cukup banyak. IDE ini dibuat dan dibesarkan oleh komunitas serta pengembang bahasa Java. Di tengah bahasa Java yang telah di beli oleh oracle, IDE ini tetap berkembang dengan merilis versi-versi yang melakukan perbaikan dari versi sebelumnya. IDE ini juga tersedia untuk melakukan pemrograman lainnya seperti PHP, C++, Ruby, Python, bahkan untuk pemrograman ‘jadul’ sekalipun yaitu Ada programming. Silahkan mengunjungi homepagenya untuk mendapatkan informasi yang lebih lengkap.
3 Top Best Java IDE (Integrated Development Environment) Image
IDE ini dibuat dan dikembangkan oleh oracle. Lengkap sudah kedigdayaan oracle di dunia enterprise, setelah mampu mengakuisisi java dari sun microsystems. Anda dapat melihat fitur-fiturnya dengan mengunjungi situs JDeveloper.
Sekarang semuanya kembali kepada anda, dan silahkan anda pilih sesuai selera. 3 IDE di atas merupakan IDE yang paling banyak di gunakan untuk pengembangan aplikasi menggunakan Java di dunia industri software.
Semoga bermanfaat dan dapat memberikan pengetahuan tambahan untuk anda.