Minggu, 14 Oktober 2012

Tugas 1 Pemrograman Visual


Hai hai hai semua....
Kali ini kang icak akan membagikan cara bagaimana membuat aplikasi pengkonversi bilangan dengan bahasa visual basic dan java. Dari postingan kang icak ini, nanti kalian akan sedikit tahu tentang perbedaan membuat aplikasi pengkonversi bilangan yang kang icak kasih nama “KonverBit”, aplikasi ini kang icak buat dengan dua bahasa pemrograman, sebenernya kang icak pinginnya c mendalami bahasa java tp karena tuntutan kuliah jadi terpaksa kang icak belajar pemrograman Visual Basic.....hehe padahal kang icak ga pernah tuh masuk makul itu, wktu tu kang icak bolos c karena da urusan....hehehe
Maaf ea bapak Nandang yang terhormat....wktu itu kang icak ga masuk karena ikut seleksi lembaga....hhehe
Oke langsung ja capppcuuussss...... 
Adapun fungsi dari aplikasi ini adalah sebagai pengubah bilangan yang kita miliki menjadi desimal, biner, oktal, heksadesimal ataupun sebaliknya...
Oke...dah g sabar ea....
Sabar....sabar....orang sabar di sayang tuhan....hihi
Yuk langsung aja kalian lihat langkah-langkahnya di bawah ini :
1.    Disini IDE yang kang icak pake dalam membuat aplikasi visual basic adalah dengan Visual Studio 2010 Profesional, sedangkan IDE yang kang icak gunakan untuk membuat aplikasi dalam bahasa java adalah Netbeans 7.1.1. kenapa kang icak apke IDE itu...?
Jawabanya ea karena kang icak pingin ja....hehe
So...langsung ja buka masing2 aplikasi IDE tersebut....
Buat project baru pada masing2 IDE,,,
Di Visual Studio kalian pilih windows lalu pilih windows form application...
disini kang icak menganggap kalian dah bisa membuat project pada masing2 IDE karena kang icak yakin kalian dah pada pinter2 jadi langsung ja terjun ke langkah yang ke tiga....wuuuuzzzzzzz 
2.    Pada IDE VB buat tampilan seperti beriikut.....tampilan berikut adaalah tampilan login sebelum masuk ke menu utama.

Tahu kan kalian harus masukan toolbox pa ja biar jadi tambilan kya gtu......
Yapppzzzz.....betul....di tampilan itu da 2 label, 2 textbox, 1 progressbar, 2 button dan 1 picture....eiitzzz masih da 1 lagi yaitu timer, timer ini kang icak pake untuk membuat progreessbar agar bisa berwarna ijo berjalan kaya form di atas itu tuh....hihihi
Untuk masukin picture kang icak anggap kalian dah pinter ea.....mudah inih....kn semua pengaturan toolbok da di bagian properties.....
Untuk textbox yang da pakai buat input password knapa bisa jadi titik2 ga jelas kya gtu jg da di bagian properties....caranya kalian ganti “true” di bagian useSystemPasswordChar....
Ini listing programnya dalam bahasa Visaul Basic :
Public Class Login
    'dibawah ini listing program untuk button masuk
    'textbox untuk input username namanya username
    'textbox untuk input password namanya password
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'memakai fungsi if elseIf untuk banyak kondisi
        'jika input password benar yaitu amikompurwokerto maka menuju ke fungsi timer
        If password.Text = "amikompurwokerto" Then
            Timer1.Enabled = True
            'jika input username dan password tidak di isi maka keluar massagebox "Masukan Username dan Password"
        ElseIf username.Text = "" And password.Text = "" Then
            MsgBox("Masukan Username dan Password")
            'username.focus() untuk memfokuskan pada textbox username
            username.Focus()
            'jika input username tidak di isi maka keluar massagebox "Masukan Username"
        ElseIf username.Text = "" Then
            MsgBox("Masukan Username...!!!")
            username.Focus()
            'jika input Password tidak di isi maka keluar massagebox "Masukan Password"
        ElseIf password.Text = "" Then
            MsgBox("Masukan Password...!!!")
            password.Focus()
            'jika input salah maka keluar massagebox "Login Salah"
        Else
            MsgBox("Login Salah...!!!")
            'membersihkan isi textbox username
            username.Clear()
            'membersihkan isi textbox Password
            password.Clear()
            username.Focus()
            'akhir fungsi if
        End If
        'akhir fungsi button masuk
    End Sub

    'ini listing program untuk button keluar
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        End
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        'fungsi untuk memakai form lain, dalam java fungsinya seperti ini "namaForm inisial=new namaForm();"
        Dim Menu As New menuUtama
        'nilai proggress bar di tambah 4
        ProgressBar1.Value += 4
        'jika progress bar di tambah 4 dan mencapi nilai 100
        If ProgressBar1.Value = 100 Then
            'fungsi timer di hentikan
            Timer1.Dispose()
            'form login di hilangkan
            Me.Visible = False
            'keluar massagebox selamat datang namaUser
            MsgBox("Selamat Datang " & username.Text)
            'menampilkan form yang di panggil
            Menu.Show()
        End If
    End Sub
    'akhir class Login
End Class


Kalo yang ini listing program dalam bahasa java :
package GUI;
import java.awt.*;
import javax.swing.*;
import GUI.AppBit;
import javax.swing.plaf.basic.BasicInternalFrameTitlePane.CloseAction;
import javax.swing.table.TableColumnModel;

/**
 *
 * @author Saiful Irham W
 */
public class Form_Login extends javax.swing.JFrame {

    /** Creates new form Form_Login */
    public Form_Login() {
        super("Form Login");
        JFrame.setDefaultLookAndFeelDecorated(true);
        java.awt.Toolkit.getDefaultToolkit().getImage("delicious-64x64.png");

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        initComponents();
       
    }
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jPanel2 = new javax.swing.JPanel();
        jDesktopPane1 = new javax.swing.JDesktopPane();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jTextField1 = new javax.swing.JTextField();
        jPasswordField1 = new javax.swing.JPasswordField();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jPanel1.setLayout(new java.awt.BorderLayout());

        jPanel2.setLayout(new java.awt.BorderLayout());

        jDesktopPane1.setBackground(new java.awt.Color(51, 255, 255));
        jDesktopPane1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "LOGIN", javax.swing.border.TitledBorder.CENTER, javax.swing.border.TitledBorder.TOP, new java.awt.Font("Monotype Corsiva", 1, 18), new java.awt.Color(204, 0, 51))); // NOI18N

        jLabel1.setFont(new java.awt.Font("Traditional Arabic", 1, 14)); // NOI18N
        jLabel1.setForeground(new java.awt.Color(204, 0, 0));
        jLabel1.setText("User Name   :");
        jLabel1.setBounds(20, 30, 90, 20);
        jDesktopPane1.add(jLabel1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jLabel2.setFont(new java.awt.Font("Traditional Arabic", 1, 14)); // NOI18N
        jLabel2.setForeground(new java.awt.Color(255, 0, 0));
        jLabel2.setText("Password   :");
        jLabel2.setBounds(240, 30, 80, 20);
        jDesktopPane1.add(jLabel2, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jButton1.setText("Masuk");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        jButton1.setBounds(130, 70, 73, 23);
        jDesktopPane1.add(jButton1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jButton2.setText("Batal");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });
        jButton2.setBounds(240, 70, 70, 23);
        jDesktopPane1.add(jButton2, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jTextField1.setText("Saiful Irham");
        jTextField1.setBounds(110, 30, 110, 20);
        jDesktopPane1.add(jTextField1, javax.swing.JLayeredPane.DEFAULT_LAYER);
        jPasswordField1.setBounds(320, 30, 110, 20);
        jDesktopPane1.add(jPasswordField1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jPanel2.add(jDesktopPane1, java.awt.BorderLayout.CENTER);

        jPanel1.add(jPanel2, java.awt.BorderLayout.CENTER);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 449, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 116, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>                       

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
        String a,b;
        AppBit opn=new AppBit();
        a=jTextField1.getText();
        b=jPasswordField1.getText();
        if (jPasswordField1.getText().equals("amikompurwokerto")){
            JOptionPane.showMessageDialog(null, "Selamat Datang "+jTextField1.getText());
            setVisible(false);
            opn.setVisible(true);
            opn.setLocation(500, 300);
        }else{
            JOptionPane.showMessageDialog(null, "Tooolllooooooolllll.....!!!", "Tolol.....!!!", 2);
            jTextField1.setText("Tolol......!!!");
            jPasswordField1.setText("");
        }
        // TODO add your handling code here:
    }                                       

   
    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                        

        setVisible(false);
        // TODO add your handling code here:
    }                                       

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new Form_Login().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                    
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JDesktopPane jDesktopPane1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JPasswordField jPasswordField1;
    private javax.swing.JTextField jTextField1;
    // End of variables declaration                  
}

**Debug program pada bahasa VB dengan menekan F5**
**Run program pada bahasa java dengan menekan F6**
**Masukan nama anda lalu masukan password “amikompurwokerto**
Setelah klik button masuk anda akan dihadapkan pada massagebox seperti berikut....


Baru ja 2 langkah tapi udah panjaaaaaannnngggggggg banggggeeeetttttzzzzz.....hehe
Jangan putus asa dooonggg....perjalanan masih panjang.....
Oke lannjjjuuutttt kawan...... 

3.    Buat menu tampilan utama dengan klik kanan my project pada solustion explorer –add – windows form lalu beri nama menuUtama....di sini kang icak menggunakan konsep tab, karena menurut kang icak kita dapat membuat aplikasi multifungsi namun mudah digunakan....
betuuullll....??? ini tampilannya.....

Kalo sekarang dah tau kan kalian harus makai toolbox pa ja.....hihi
Kreatif dikit lah....jangan terlalu mirip.....yang penting da toolbox utama yang harus dipakai dalam membuat form di atas yaitu 1 tabcontrol, 2 combobox, dan 2 button....
Untuk 2 combobox di atas itemnya da 4 yaitu Desimal, Biner, Oktal, dan Heksadesimal.....kalian bisa masukan 4 item tersebut di “items” pada bagian properties......
Dari menu itu kalian bisa memilih, bilangan input dan bilangan output yang masing2 memiliki 4 pilihan berbeda...namun jika anda memilih bilangan input dan bilangan output yang sama maka akan keluar tampilan massagebox seperti ini...


Jadi jangan sama ea,,,,, 
Di atas ada dua tab...yang satu tab “Menu Utama” dan yang kedua tab “Tentang”,,,ini tampilan tabnya.....


Ini listing program dalam bahasa Visual Basic :
Public Class menuUtama
    'listing program button Keluar
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        'jika massagebox keluar dan menekan yes maka form menghilang
        If MsgBox("Anda Yakin Ingin Keluar...???", vbYesNo + vbQuestion + vbDefaultButton2, "Keluar") = vbYes Then
            MsgBox("Terima Kasih Telah Menggunakan Aplikasi Ini")
            Me.Close()
            'end digunakan unntuk menghentikan program agar ada saat form mrnhilang program tidak tetap berjalan pada memori komputer
            End
        End If
    End Sub

    'listing program button pilih
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'if combobox1 dan combobox2 di pilih dengan indek tertentu maka jalankan program di dalam fungsi if
        If ComboBox1.SelectedIndex = 0 And ComboBox2.SelectedIndex = 0 Then
            MsgBox("Bilangan Input dan Bilangan Output Tidak Boleh Sama...!!!")
        ElseIf ComboBox1.SelectedIndex = 1 And ComboBox2.SelectedIndex = 1 Then
            MsgBox("Bilangan Input dan Bilangan Output Tidak Boleh Sama...!!!")
        ElseIf ComboBox1.SelectedIndex = 2 And ComboBox2.SelectedIndex = 2 Then
            MsgBox("Bilangan Input dan Bilangan Output Tidak Boleh Sama...!!!")
        ElseIf ComboBox1.SelectedIndex = 3 And ComboBox2.SelectedIndex = 3 Then
            MsgBox("Bilangan Input dan Bilangan Output Tidak Boleh Sama...!!!")

        ElseIf ComboBox1.SelectedIndex = 0 And ComboBox2.SelectedIndex = 1 Then
            KonverBit.konvert.input1.Text = "Desimal"
            KonverBit.konvert.input2.Text = "Biner"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        ElseIf ComboBox1.SelectedIndex = 0 And ComboBox2.SelectedIndex = 2 Then
            KonverBit.konvert.input1.Text = "Desimal"
            KonverBit.konvert.input2.Text = "Oktal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        ElseIf ComboBox1.SelectedIndex = 0 And ComboBox2.SelectedIndex = 3 Then
            KonverBit.konvert.input1.Text = "Desimal"
            KonverBit.konvert.input2.Text = "Heksadesimal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()

        ElseIf ComboBox1.SelectedIndex = 1 And ComboBox2.SelectedIndex = 0 Then
            KonverBit.konvert.input1.Text = "Biner"
            KonverBit.konvert.input2.Text = "Desimal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        ElseIf ComboBox1.SelectedIndex = 1 And ComboBox2.SelectedIndex = 2 Then
            KonverBit.konvert.input1.Text = "Biner"
            KonverBit.konvert.input2.Text = "Oktal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        ElseIf ComboBox1.SelectedIndex = 1 And ComboBox2.SelectedIndex = 3 Then
            KonverBit.konvert.input1.Text = "Biner"
            KonverBit.konvert.input2.Text = "Heksadesimal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()

        ElseIf ComboBox1.SelectedIndex = 2 And ComboBox2.SelectedIndex = 0 Then
            KonverBit.konvert.input1.Text = "Oktal"
            KonverBit.konvert.input2.Text = "Desimal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        ElseIf ComboBox1.SelectedIndex = 2 And ComboBox2.SelectedIndex = 1 Then
            KonverBit.konvert.input1.Text = "Oktal"
            KonverBit.konvert.input2.Text = "Biner"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        ElseIf ComboBox1.SelectedIndex = 2 And ComboBox2.SelectedIndex = 3 Then
            KonverBit.konvert.input1.Text = "Oktal"
            KonverBit.konvert.input2.Text = "Heksadesimal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()

        ElseIf ComboBox1.SelectedIndex = 3 And ComboBox2.SelectedIndex = 0 Then
            KonverBit.konvert.input1.Text = "Heksadesimal"
            KonverBit.konvert.input2.Text = "Desimal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        ElseIf ComboBox1.SelectedIndex = 3 And ComboBox2.SelectedIndex = 1 Then
            KonverBit.konvert.input1.Text = "Heksadesimal"
            KonverBit.konvert.input2.Text = "Biner"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        ElseIf ComboBox1.SelectedIndex = 3 And ComboBox2.SelectedIndex = 2 Then
            KonverBit.konvert.input1.Text = "Heksadesimal"
            KonverBit.konvert.input2.Text = "Oktal"
            Me.Visible = False
            KonverBit.konvert.text1.Focus()
            KonverBit.konvert.Show()
        End If
    End Sub
End Class




Ini listing program dalam bahasa java :
package GUI;
import Oktal_to_x.*;
import Heksadesimal_to_x.*;
import Biner_to_x.*;
import Desimal_to_x.*;
import java.awt.*;
import javax.swing.*;
/**
 *
 * @author Saiful Irham W
 */
public class AppBit extends javax.swing.JFrame {
   

    /** Creates new form AppBit */
    public AppBit() {
        super("KonverBit");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JFrame.isDefaultLookAndFeelDecorated();


        initComponents();
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jPanel2 = new javax.swing.JPanel();
        jDesktopPane1 = new javax.swing.JDesktopPane();
        jTabbedPane1 = new javax.swing.JTabbedPane();
        jTabbedPane2 = new javax.swing.JTabbedPane();
        jDesktopPane3 = new javax.swing.JDesktopPane();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jComboBox1 = new javax.swing.JComboBox();
        jLabel4 = new javax.swing.JLabel();
        jComboBox2 = new javax.swing.JComboBox();
        jTabbedPane3 = new javax.swing.JTabbedPane();
        jDesktopPane2 = new javax.swing.JDesktopPane();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTextArea1 = new javax.swing.JTextArea();
        jTabbedPane4 = new javax.swing.JTabbedPane();
        jScrollPane2 = new javax.swing.JScrollPane();
        jTextArea2 = new javax.swing.JTextArea();
        jProgressBar1 = new javax.swing.JProgressBar();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jPanel1.setLayout(new java.awt.BorderLayout());

        jPanel2.setLayout(new java.awt.BorderLayout());

        jDesktopPane1.setBackground(new java.awt.Color(0, 204, 204));
        jDesktopPane1.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "KonverBit Version 1.0.0", javax.swing.border.TitledBorder.CENTER, javax.swing.border.TitledBorder.TOP, new java.awt.Font("Bradley Hand ITC", 1, 18), new java.awt.Color(204, 0, 51))); // NOI18N
        jDesktopPane1.setForeground(new java.awt.Color(204, 0, 0));

        jTabbedPane1.setForeground(new java.awt.Color(0, 0, 153));
        jTabbedPane1.setTabPlacement(javax.swing.JTabbedPane.LEFT);

        jTabbedPane2.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Konverter", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Traditional Arabic", 3, 18), new java.awt.Color(153, 0, 0))); // NOI18N
        jTabbedPane2.setTabPlacement(javax.swing.JTabbedPane.LEFT);

        jDesktopPane3.setBackground(new java.awt.Color(240, 240, 240));

        jButton1.setText("OK");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        jButton1.setBounds(330, 10, 80, 23);
        jDesktopPane3.add(jButton1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jButton2.setText("Keluar");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });
        jButton2.setBounds(330, 50, 80, 23);
        jDesktopPane3.add(jButton2, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jLabel1.setFont(new java.awt.Font("Pristina", 3, 14));
        jLabel1.setForeground(new java.awt.Color(0, 0, 102));
        jLabel1.setText("IT_A Production");
        jLabel1.setBounds(320, 80, 100, 18);
        jDesktopPane3.add(jLabel1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jLabel2.setFont(new java.awt.Font("Traditional Arabic", 1, 12));
        jLabel2.setText("Input Bilangan     :");
        jLabel2.setBounds(10, 10, 110, 20);
        jDesktopPane3.add(jLabel2, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Desimal", "Biner", "Heksadesimal", "Oktal" }));
        jComboBox1.setBounds(130, 10, 120, 20);
        jDesktopPane3.add(jComboBox1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jLabel4.setFont(new java.awt.Font("Traditional Arabic", 1, 12));
        jLabel4.setText("Output Bilangan  :");
        jLabel4.setBounds(10, 60, 100, 20);
        jDesktopPane3.add(jLabel4, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Desimal", "Biner", "Heksadesimal", "Oktal" }));
        jComboBox2.setBounds(130, 60, 120, 20);
        jDesktopPane3.add(jComboBox2, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jTabbedPane2.addTab("", jDesktopPane3);

        jTabbedPane1.addTab("Konverter", new javax.swing.ImageIcon(getClass().getResource("/Images/delicious-32x32.png")), jTabbedPane2); // NOI18N

        jTabbedPane3.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "About", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Traditional Arabic", 3, 18), new java.awt.Color(153, 0, 0))); // NOI18N
        jTabbedPane3.setTabLayoutPolicy(javax.swing.JTabbedPane.SCROLL_TAB_LAYOUT);
        jTabbedPane3.setTabPlacement(javax.swing.JTabbedPane.LEFT);

        jDesktopPane2.setBackground(new java.awt.Color(0, 255, 255));

        jTextArea1.setBackground(new java.awt.Color(240, 240, 240));
        jTextArea1.setColumns(20);
        jTextArea1.setEditable(false);
        jTextArea1.setForeground(new java.awt.Color(153, 0, 0));
        jTextArea1.setRows(5);
        jTextArea1.setText("Aplikasi ini di berdayakan oleh ©Saiful Irham W.\nkelas TI 11 B Mahasiswa STMIK AMIKOM Purwokerto.\nPembuatan apalikasi ini sebagai bentuk bantuan\ndalam pembelajaran.\njika ada ketidaknyamanan dalam penggunaan aplikasi\nini silakan hubungi saya \nmelalui e-mail ke \"saiful.irham33@gmail.com\"......\nterima kasih......\n\n\n\t\t\t   Konverbit Versi 1.0.0");
        jTextArea1.setMinimumSize(new java.awt.Dimension(444, 112));
        jScrollPane1.setViewportView(jTextArea1);

        jScrollPane1.setBounds(0, 0, 430, 100);
        jDesktopPane2.add(jScrollPane1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jTabbedPane3.addTab("", null, jDesktopPane2, "null");

        jTabbedPane1.addTab("About      ", new javax.swing.ImageIcon(getClass().getResource("/Images/designfloat-32x32.png")), jTabbedPane3); // NOI18N

        jTabbedPane4.setBorder(javax.swing.BorderFactory.createTitledBorder(null, "Help", javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, new java.awt.Font("Traditional Arabic", 3, 18), new java.awt.Color(153, 0, 0))); // NOI18N
        jTabbedPane4.setTabPlacement(javax.swing.JTabbedPane.LEFT);

        jTextArea2.setBackground(new java.awt.Color(240, 240, 240));
        jTextArea2.setColumns(20);
        jTextArea2.setEditable(false);
        jTextArea2.setForeground(new java.awt.Color(153, 0, 0));
        jTextArea2.setRows(5);
        jTextArea2.setText("1. Klik tab \"Konverter\".\n2. Pilih jenis bilangan yang akan di konvert pada \"Input\n   Bilangan\".\n3. Pilih jenis bilangan yang akan di jadikan Output pada\n   \"Output Bilangan\".\n4. \"Input Bilangan\" dan \"Output Bilangan\" tidak boleh sama.\n5. klik \"OK\" untuk setuju, klik \"Keluar\" Untuk tutup aplikasi..\n6. Masukan bilangan pada kotak pertama lalu klik\n   tombol \"Konvert\".\n7. Jika ada yang kurang jelas silakan hubungi saya \n   melalaui e-mail ke \"saiful.irham33@gmail.com\".");
        jScrollPane2.setViewportView(jTextArea2);

        jTabbedPane4.addTab("", jScrollPane2);

        jTabbedPane1.addTab("Help       ", new javax.swing.ImageIcon(getClass().getResource("/Images/digg-32x32.png")), jTabbedPane4); // NOI18N

        jTabbedPane1.setBounds(10, 30, 580, 150);
        jDesktopPane1.add(jTabbedPane1, javax.swing.JLayeredPane.DEFAULT_LAYER);
        jProgressBar1.setBounds(10, 190, 580, 14);
        jDesktopPane1.add(jProgressBar1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jPanel2.add(jDesktopPane1, java.awt.BorderLayout.CENTER);

        jPanel1.add(jPanel2, java.awt.BorderLayout.CENTER);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 603, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 220, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>                       

    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                        
        setVisible(false);
        // TODO add your handling code here:
    }                                       

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        

        if (jComboBox1.getSelectedItem()=="Desimal" && jComboBox2.getSelectedItem()=="Desimal" ||
                jComboBox1.getSelectedItem()=="Biner" && jComboBox2.getSelectedItem()=="Biner" ||
                jComboBox1.getSelectedItem()=="Heksadesimal" && jComboBox2.getSelectedItem()=="Heksadesimal" ||
                jComboBox1.getSelectedItem()=="Oktal" && jComboBox2.getSelectedItem()=="Oktal"){
            JOptionPane.showMessageDialog(null, "Input Bilangan dan Output Bilangan tidak boleh sama", "Toolloll...!!!", 2);
        }else if (jComboBox1.getSelectedItem()=="Desimal" && jComboBox2.getSelectedItem()=="Biner"){
            Biner_x bix=new Biner_x();
            bix.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
            bix.setVisible(true);
            bix.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Desimal" && jComboBox2.getSelectedItem()=="Heksadesimal"){
            Heksadesimal_x hex=new Heksadesimal_x();
            hex.setVisible(true);
            hex.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Desimal" && jComboBox2.getSelectedItem()=="Oktal"){
            Oktal_x ox=new Oktal_x();
            ox.setVisible(true);
            ox.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Biner" && jComboBox2.getSelectedItem()=="Desimal"){
            Desimal_x1 dex1=new Desimal_x1();
            dex1.setVisible(true);
            dex1.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Biner" && jComboBox2.getSelectedItem()=="Heksadesimal"){
            Heksadesimal_x1 hex1=new Heksadesimal_x1();
            hex1.setVisible(true);
            hex1.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Biner" && jComboBox2.getSelectedItem()=="Oktal"){
            Oktal_x1 ox1=new Oktal_x1();
            ox1.setVisible(true);
            ox1.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Heksadesimal" && jComboBox2.getSelectedItem()=="Desimal"){
            Desimal_x2 dex2=new Desimal_x2();
            dex2.setVisible(true);
            dex2.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Heksadesimal" && jComboBox2.getSelectedItem()=="Biner"){
            Biner_x2 bix2=new Biner_x2();
            bix2.setVisible(true);
            bix2.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Heksadesimal" && jComboBox2.getSelectedItem()=="Oktal"){
            Oktal_x2 ox2=new Oktal_x2();
            ox2.setVisible(true);
            ox2.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Oktal" && jComboBox2.getSelectedItem()=="Desimal"){
            Desimal_x3 dex3=new Desimal_x3();
            dex3.setVisible(true);
            dex3.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Oktal" && jComboBox2.getSelectedItem()=="Biner"){
            Biner_x3 bix3=new Biner_x3();
            bix3.setVisible(true);
            bix3.setLocation(500, 300);
        }else if (jComboBox1.getSelectedItem()=="Oktal" && jComboBox2.getSelectedItem()=="Heksadesimal"){
            Heksadesimal_x3 hex3=new Heksadesimal_x3();
            hex3.setVisible(true);
            hex3.setLocation(500, 300);
        }
        // TODO add your handling code here:
    }                                       

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new AppBit().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                    
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JComboBox jComboBox1;
    private javax.swing.JComboBox jComboBox2;
    private javax.swing.JDesktopPane jDesktopPane1;
    private javax.swing.JDesktopPane jDesktopPane2;
    private javax.swing.JDesktopPane jDesktopPane3;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JProgressBar jProgressBar1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    private javax.swing.JTabbedPane jTabbedPane1;
    private javax.swing.JTabbedPane jTabbedPane2;
    private javax.swing.JTabbedPane jTabbedPane3;
    private javax.swing.JTabbedPane jTabbedPane4;
    private javax.swing.JTextArea jTextArea1;
    private javax.swing.JTextArea jTextArea2;
    // End of variables declaration                  
}

4.    Buat form baru lagi, dan beri nama konvert....lalu beri toolbox dan buat tampilannya seperti ini :

Kang icak yakin kali sekarang kalian dah bisa kan masukan toolbox2 itu.... 
Ganti nama variable pertama dan kedua dengan input1 dan input 2, lalu ganti nama variable textbox pertama dan kedua dengan text1 dan text2....
Pada listing program Visaual Basic kang icak menggunakan prinsip method karena dengan itu kita mampu mengurangi pemakaian program yang panjang....
Ini listeing program Visual Basic :
Public Class konvert
    'ini listing program button kembali
    Private Sub btnKembali_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKembali.Click
        Me.Visible = False
        text1.Clear()
        text2.Clear()
        menuUtama.Show()
        'setting proggrssbar dengan nilai 0
        ProgressBar1.Value = 0
    End Sub
    'method konversi bilangan
    Public Function DesToBin(ByVal NDesimal As Long) As String
        Dim C As Byte
        Dim D As Long
        Dim Nilai As String
        On Error GoTo ErrorHandler
        D = (2 ^ 31) - 1
        While D > 0
            If NDesimal - D >= 0 Then
                NDesimal = NDesimal - D
                Nilai = Nilai & "1"
            Else
                If Val(Nilai) > 0 Then Nilai = Nilai & "0"
            End If
            D = D / 2
        End While
        DesToBin = Nilai
        Exit Function
ErrorHandler:
        DesToBin = 0
    End Function

    Public Function BinToDes(ByVal NDesimal As String) As Long
        BinToDes = DesToBin(NDesimal)
    End Function

    Public Function DesToHex(ByVal NDesimal As Long) As String
        DesToHex = Hex(NDesimal)
    End Function

    Public Function HexToDes(ByVal NHexa As String) As Long
        Dim E As Integer
        Dim Nilai As Long
        Dim F As Long
        Dim CharNilai As Byte
        On Error GoTo ErrorHandler
        For E = Len(NHexa) To 1 Step -1
            Select Case Mid(NHexa, E, 1)
                Case "0" To "9" : CharNilai = CInt(Mid(NHexa, E, 1))
                Case Else : CharNilai = Asc(Mid(NHexa, E, 1)) - 55
            End Select
            Nilai = Nilai + ((16 ^ F) * CharNilai)
            F = F + 1
        Next E
        HexToDes = Nilai
        Exit Function
ErrorHandler:
        HexToDes = 0
    End Function

    Public Function DesToOk(ByVal NDesimal As Long) As String
        DesToOk = Oct(NDesimal)
    End Function

    Public Function OkToDes(ByVal NOktal As String) As Long
        Dim G As Integer
        Dim H As Long
        Dim Nilai As Long
        On Error GoTo ErrorHandler
        For G = Len(NOktal) To 1 Step -1
            Nilai = Nilai + (8 ^ H) * CInt(Mid(NOktal, G, 1))
            H = H + 1
        Next G
        OkToDes = Nilai
        Exit Function
ErrorHandler:
        OkToDes = 0
    End Function

    Public Function BinToOk(ByVal bin As Long) As String
        BinToOk = DesToOk(BinToDes(bin))
    End Function

    Public Function BinToHex(ByVal NBiner As Long) As String
        BinToHex = DesToHex(BinToDes(NBiner))
    End Function

    Public Function OkToBin(ByVal NOktal As Double) As String
        OkToBin = DesToBin(OkToDes(NOktal))
    End Function
    Public Function OkToHex(ByVal NOktal As Double) As String
        OkToHex = DesToHex(OkToDes(NOktal))
    End Function

    Public Function HexToBin(ByVal NHexa As String) As String
        HexToBin = DesToBin(HexToDes(NHexa))
    End Function
    '
    Public Function HexToOk(ByVal NHexa As String) As Double
        HexToOk = DesToOk(HexToDes(NHexa))
    End Function
    'akhir method konversi bilangan

    'listing program button konvert
    Private Sub btnKonvert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKonvert.Click
        Timer1.Enabled = True
    End Sub

    'listing program button konvert
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If input1.Text.Equals("Desimal") And input2.Text.Equals("Biner") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                'memanggil method dan menampilkan pada texbox2 dari isi textbox1
                text2.Text = DesToBin(text1.Text)
            End If
        ElseIf input1.Text.Equals("Desimal") And input2.Text.Equals("Oktal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = DesToOk(text1.Text)
            End If
        ElseIf input1.Text.Equals("Desimal") And input2.Text.Equals("Heksadesimal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = DesToHex(text1.Text)
            End If

        ElseIf input1.Text.Equals("Biner") And input2.Text.Equals("Desimal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = BinToDes(text1.Text)
            End If
        ElseIf input1.Text.Equals("Biner") And input2.Text.Equals("Oktal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = BinToOk(text1.Text)
            End If
        ElseIf input1.Text.Equals("Biner") And input2.Text.Equals("Heksadesimal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = BinToHex(text1.Text)
            End If

        ElseIf input1.Text.Equals("Oktal") And input2.Text.Equals("Desimal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = OkToDes(text1.Text)
            End If
        ElseIf input1.Text.Equals("Oktal") And input2.Text.Equals("Biner") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = OkToBin(text1.Text)
            End If
        ElseIf input1.Text.Equals("Oktal") And input2.Text.Equals("Heksadesimal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = OkToHex(text1.Text)
            End If

        ElseIf input1.Text.Equals("Heksadesimal") And input2.Text.Equals("Desimal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = HexToDes(text1.Text)
            End If
        ElseIf input1.Text.Equals("Heksadesimal") And input2.Text.Equals("Biner") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = HexToBin(text1.Text)
            End If
        ElseIf input1.Text.Equals("Heksadesimal") And input2.Text.Equals("Oktal") Then
            ProgressBar1.Value += 4
            If ProgressBar1.Value = 100 Then
                Timer1.Dispose()
                text2.Text = HexToOk(text1.Text)
            End If
        Else
            MsgBox("Input Bilangan Not Valid...!!!")
            text1.Clear()
            text2.Clear()
        End If
    End Sub
End Class

**jalankan program lalu build program, dah tau kan caranya....hiihi
Yaps,,,klik menu build lalu pilih build <spasi> namaProject lalu cari dech aplikasinya di windows Explorer dan masuk ke folder project kalian lalu cari yang berexstention application**

Ini listing program dalam bahasa Java :
Eitttzzzz.....sebelumnya kang icak mohon maaf nich karena listing program dalam bahasa java paaannnjjaaaannnngggg bangeeeeettttssss.....karena dalam bahasa java kang icak memakai banyak sekali class, jadi kalau kang icak postingkan juga bisa2 kang icak kena tilang ma pihak blogspot karena posting panjangnya ga kira2....hehe


Dari pembahasan di atas kang icak harap kalian sudah tahu mana kekurangn dan kelebihan dari masing2 bahasa pemrograman di atas.....tapi jangan bikin kalian benci lho pada salah satu bahasa pemrograman yang menurut kalian lebih jelek,,,karena menurut kang icak kita harus tetep mempelajarinya biarpun bahasa pemrograman’y sejelek kang icak.....hehehe
Oke slemaat mencoba tutorial dari kang icak.....
Sampai jumpa di postingan selanjutnya.......bye bye 

4 komentar:

  1. salah kie tidak sesuai tema

    kon bikin aplikasi sederhana malah bikin aplikasi njrimet

    BalasHapus
    Balasan
    1. hehe....
      ra jlimet koh....
      sebenere seferhana loh....
      ko be mesti tyeng gawe..... :)

      Hapus
  2. kern sih gan...tpi panjangeeeepolllll.....,hehehehe.asdos dilawan.hehehe

    BalasHapus
    Balasan
    1. huhu....
      ini aplikasi seferhana koh....
      km past jg bisa bikin kok......... :)

      Hapus