Sabtu, 05 September 2015

Keterlambatan LTE Sampai 2018, Ancaman kecepatan indonesia




Sehabis baca-baca di detik.com saya menemukan sebuah artikel yang baru saja di update pagi ini 22-07-2013 Tunda LTE Sampai 2018, Ancaman Macet Total yang membuat saya kagum dengan tulisan tersebut membahas tentang Teknologi 4G LTE yang harus secepatnya di adopsi di indonesia karena penguana sudah haus akan kecepatan internet yang sangat tingggi 
Jakarta - Kemacetan lalu lintas telah menjadi menu wajib warga Jakarta. Bukannya membaik, tahun ini kemacetan semakin parah. Tidak hanya di Jakarta, melainkan telah meluas di kota besar lainnya. Bahkan kemacetan parah juga terjadi setiap hari di tol Cikampek dan jalur Pantura.
Berbagai inisiatif pemerintah untuk mengurangi kemacetan disikapi warga dengan pesimis, pasrah bahkan penolakan. Mungkin saja karena warga tidak percaya lagi kepada pemerintah yang dianggap terlalu lambat menyikapi hal ini. Sebut saja program MRT dan monorail yang tidak mulus sampai saat ini.
Kenapa sampai demikian? Karena pemerintah terlambat membaca angka penjualan sepeda motor yang lebih dari 7 juta per tahun dan mobil yang mencapai 1 juta per tahun, dan terus tumbuh dua digit. Sementara pembangunan jalan baru dan tol jauh dari mencukupi. Dikutip dari www.worldbank.org, total jaringan jalan tercatat 477 ribu kilometer dan jumlah jalan tol yang terbangun sejak 1978-2010 baru sepanjang 742 Km.
Seperti halnya infrastruktur jalan raya, LTE adalah infrastruktur broadband yang boleh disebut sebagai jalan tol. Serupa dengan perencanaan pembangunan jalan tol, penggelaran LTE memang sangat kompleks, tentu tidak semudah 3G. Karenanya butuh political decision dan komitmen seluruh pihak termasuk operator, pengguna, BRTI, Kementerian Kominfo, dan kementerian lain yang terkait.
1. Long Term Evolution (LTE)
Long Term Evolution (LTE) adalah standar komunikasi data nirkabel dengan kecepatan tinggi yang berbasis pada jaringan GSM/EDGE dan UMTS/HSPA. Secara teori teknologi ini mampu mengunduh file dengan kecepatan 300 Mbps dan kecepatan unggah 75 Mbps.
LTE dikembangkan 3GPP, organisasi penerbit standar teknologi GSM, dengan maksud untuk menjamin ketersinambungan sistem 3G yang saat ini telah digunakan secara luas di seluruh dunia. Tentu saja juga untuk memenuhi kebutuhan akses data yang semakin cepat dengan kualitas yang semakin baik. LTE dipercaya bakal menjadi standar jaringan seluler global, baik untuk GSM maupun CDMA.
2. LTE Indonesia Tahun 2018?
Sampai saat ini pemerintah belum menyampaikan rencana jelas, kapan teknologi ini akan diterapkan. Pemerintah sedang fokus menyelesaikan tender 3G dan menata ulang seluruh blok frekuensi tersebut. Pemerintah beralasan kelambatan adopsi LTE disebabkan tidak tersedianya spektrum yang sesuai. Spektrum 700 MHz yang dianggap ideal masih digunakan oleh televisi analog dan baru bisa dimanfaatkan tahun 2018.
Selain karena spektrum, teknologi 3G juga disebut belum dimanfaatkan secara maksimal. Lagipula, investasi LTE sangat besar, sementara smartphone yang mendukung LTE masih terbatas.
Karena hambatan tersebut, beberapa pihak memandang keberadaan LTE saat ini belum urgent. Karenanya LTE bisa ditunda sampai 2018. 
Pandangan tersebut amat spekulatif dan beresiko. Adopsi LTE harus menjadi prioritas industri telko negeri ini. Tahun 2014 menjadi masa ideal implementasi LTE, paling tidak karena beberapa alasan di bawah ini.
3. Sejarah Adopsi Teknologi
Adopsi teknologi CDMA, GSM, 2G dan 3G di Indonesia berkisar 4-6 tahun sejak teknologi tersebut komersial untuk pertama kalinya. Sedangkan teknologi LTE telah diluncurkan secara komersial sejak Desember 2009. Belajar dari sejarah tersebut, tahun 2013-2015 merupakan masa ideal untuk adopsi LTE di Indonesia.
Kenapa ideal? Menunggu 4-6 tahun dikatakan ideal, setidaknya karena alasan berikut. Pertama, tidak semua teknologi baru diterima publik dan populer. Sebagai contoh teknologi WiMAX. Meskipun teknologi ini lahir lebih dulu dan memiliki spesifikasi teknis yang setara, namun tampaknya tidak akan berkembang karena kalah bersaing dengan LTE. 
Kedua, butuh waktu untuk belajar. Indonesia bisa belajar dari implementasi LTE di berbagai negara dengan berbagai frekuensi dan kondisi lapangan yang berbeda. Ketiga, biaya mahal. Setiap teknologi baru, pada awalnya harga infrastruktur dan device-nya selalu mahal, namun perlahan akan turun. Keempat, memberi kesempatan penetrasi kepada teknologi sebelumnya, 3G HSPA.
4. Adopsi Global
LTE komersial diluncurkan pertama kali oleh Teliasonera di Stockholm dan Oslo pada Desember 2009. Sampai kuartal pertama tahun ini, ABI Research melaporkan jumlah pengguna mencapai 108 juta. IDATE memperkirakan jumlah pengguna bakal naik tajam, hingga mencapai 915 juta pada akhir 2016 dan menyentuh satu miliar pada 2017.
LTE telah diadopsi oleh hampir seluruh belahan dunia, lebih dari 90 negara. Tidak hanya di negara maju, namun telah dinikmati banyak negara berkembang. Seperti Angola, Tanzania dan Namibia di benua Afrika. Bahrain, Oman dan Libanon di belahan Timur Tengah. Serta Malaysia, Thailand dan Philipina di Asia Tenggara.
Bahkan bulan lalu, SK Telecom Korea Selatan membuat kejutan dengan meluncurkan LTE-Advanced komersial pertama di dunia. Dalam dua minggu dilaporkan telah menjangkau Seoul dan 43 kota lainnya, serta sukses menggaet 150 ribu pelanggan.
Jika saat ini negara berkembang dan tetangga sudah menikmati, mampukah masyarakat Indonesia menunggu LTE sampai 2018?
4. Dukungan Gadget
Hampir semua produsen gadget global telah menjual tablet dan smartphone dengan dukungan LTE. Sebut saja beberapa merk populer seperti Apple iPhone 5, Blackberry Z10 dan Samsung Galaxy S4. Juga seperti HTC One, LG Optimus G dan Nokia Lumia 920. Bahkan termasuk merk lapis berikutnya seperti Windows Phone X8, Sony Xperia V dan Asus PadFone 2.
Perusahaan riset IDC melaporkan pada kuartal dua tahun ini, untuk pertama kalinya penjualan smartphone melebihi feature phone. Lebih lanjut mereka memperkirakan akhir tahun ini jumlah smartphone global akan mencapai 918 juta dan terus naik sampai 1,5 miliar pada 2017. Jumlah tersebut berkisar dua-pertiga dari total pasar ponsel global.
Pasar smartphone Indonesia dengan sendirinya akan mengikuti pasar global. Terlebih lagi, pasar Indonesia cenderung irrasional, karena lebih mementingkan lifestyle. Dari 240 juta lebih pengguna ponsel di Indonesia, diperkirakan lebih dari 40 juta adalah pengguna smartphone. 
Meskipun dari jumlah tersebut porsi smartphone LTE masih relatif kecil, namun diyakini akan segera berbalik ketika LTE sudah tersedia dan harganya semakin terjangkau.
Jika pengguna smartphone di Indonesia sudah demikian luas, mampukah masyarakat Indonesia menunggu LTE sampai 2018?
5. Internet Indonesia
Meskipun jumlah pengguna internet sudah mencapai 62,5 juta pada akhir 2012, namun penetrasinya masih 27 persen. Angka ini masih berada di bawah Vietnam yang telah mencapai 30,5 persen, dan belum memenuhi target 50 persen sesuai kesepakatan 10 negara Asia Tenggara.
Akamai Technologies melaporkan rata-rata kecepatan internet di Indonesia sebesar 1,2 Mbps, menempatkan Indonesia di peringkat 115 dunia. Angka ini berada di bawah rata-rata kecepatan internet global sebesar 2,8 Mbps. Angka tersebut bahkan berada di bawah Vietnam sebesar 1,6 Mbps, Malaysia 2,2 Mbps dan Thailand 3,1 Mbps.
Jika posisi internet Indonesia masih jauh di belakang, tidakkah berniat membuat lompatan? Mampukah Indonesia menunggu LTE sampai 2018?
6. Pendorong Pertumbuhan Ekonomi
ITU melaporkan setiap peningkatan penetrasi broadband 10% akan mendorong kenaikan Gross Domestic Bruto (GDB) sebesar 1,38%. Sementara Business World melaporkan broadband telah menyumbang kenaikan GDB rata-rata 2%. Khusus di Indonesia, BPS menunjukkan kontribusi subsektor telekomunikasi terhadap PDB tahun 2012 sebesar 3,2%.
Senior Director Spectrum Policy & Regulatory Affairs GSMA, Chris Perera memaparkan kepada sejumlah media di Jakarta (23/5/2013), bahwa penundaan LTE selama empat tahun, dari tahun 2014 ke 2018, bisa menghasilkan kerugian sebesar USD 16,9 miliar untuk GDP, USD 4,7 miliar untuk pajak, 79.000 usaha dan 152.000 lowongan kerja. Kerugian ini ditaksir bisa lebih dari USD 20 miliar atau sekitar Rp. 200 triliun.
Awas Internet Macet Padat Merayap.
Seandainya pemerintah tidak segera mengambil political decision dan tetap berencana mengadopsi LTE pada tahun 2018, maka dari argumentasi di atas, rasanya tidak berlebihan jika sejumlah pihak memprediksi internet bakal macet total, padat merayap layaknya kemacetan kota Jakarta.
Pada saat itu, LTE tidak mampu lagi menjawab kebutuhan dan solusi pun semakin sulit ditemukan. Kondisi akan lebih parah, jika masyarakat tidak percaya lagi kepada kemampuan pemerintah mengatasi permasalahan infrastruktur broadband.
Sebagai bagian anak negeri dan pengguna telekomunikasi, kita tentu berharap semoga pemerintah segera mengambil keputusan dan mempersiapkan adopsi LTE secepatnya. Tahun 2014 merupakan tahun ideal, atau setidaknya 2015. Semata-mata untuk menghindari kekisruhan industri telko dan demi kemakmuran bangsa Indonesia.
Dari bacaan di atas bisa di simpulkan bawah indonesia mestinya tahun 2014 sudah mengadopsi teknologi ini supaya tidak rugi . semoga saja pemerintah bisa cepat dalam menangain hal seperti ini

Selasa, 15 Juli 2014

Program Aplikasi dengan Database sqlserver


Tugas UAS semester genap 2014

Program Aplikasi dengan Database sqlserver

Pada tugas UAS mata kuliah kali ini saya mencoba membuat program penjualan TIKET KAI dengan database sqlserver, berikut screenshoot aplikasi yang saya buat.
dan berikut adalah screenshoot report hasil dari aplikasi yang saya buat:
 












source code dari form aplikasi yang saya buat:
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package tugas_uas;

import java.awt.EventQueue;
import java.beans.Beans;
import java.util.ArrayList;

import java.util.List;
import javax.persistence.RollbackException;
import javax.swing.JFrame;
import javax.swing.JPanel;

/**
 *
 * @author FAIZ
 */
public class formTickets extends JPanel {
   
    double harga_tiket,qty,hasil,total;
    public formTickets() {
        initComponents();
        if (!Beans.isDesignTime()) {
            entityManager.getTransaction().begin();
        }
    }

    /**
     * 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() {
        bindingGroup = new org.jdesktop.beansbinding.BindingGroup();

        entityManager = java.beans.Beans.isDesignTime() ? null : javax.persistence.Persistence.createEntityManagerFactory("dbtiket?zeroDateTimeBehavior=convertToNullPU").createEntityManager();
        query = java.beans.Beans.isDesignTime() ? null : entityManager.createQuery("SELECT t FROM Tbtiket t");
        list = java.beans.Beans.isDesignTime() ? java.util.Collections.emptyList() : org.jdesktop.observablecollections.ObservableCollections.observableList(query.getResultList());
        masterScrollPane = new javax.swing.JScrollPane();
        masterTable = new javax.swing.JTable();
        namaLabel = new javax.swing.JLabel();
        nomorKtpLabel = new javax.swing.JLabel();
        namaKeretaLabel = new javax.swing.JLabel();
        hargaTiketLabel = new javax.swing.JLabel();
        qtyLabel = new javax.swing.JLabel();
        totalLabel = new javax.swing.JLabel();
        namaField = new javax.swing.JTextField();
        nomorKtpField = new javax.swing.JTextField();
        namaKeretaField = new javax.swing.JTextField();
        hargaTiketField = new javax.swing.JTextField();
        qtyField = new javax.swing.JTextField();
        totalField = new javax.swing.JTextField();
        saveButton = new javax.swing.JButton();
        refreshButton = new javax.swing.JButton();
        newButton = new javax.swing.JButton();
        deleteButton = new javax.swing.JButton();

        FormListener formListener = new FormListener();

        org.jdesktop.swingbinding.JTableBinding jTableBinding = org.jdesktop.swingbinding.SwingBindings.createJTableBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, list, masterTable);
        org.jdesktop.swingbinding.JTableBinding.ColumnBinding columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${nama}"));
        columnBinding.setColumnName("Nama");
        columnBinding.setColumnClass(String.class);
        columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${nomorKtp}"));
        columnBinding.setColumnName("Nomor Ktp");
        columnBinding.setColumnClass(String.class);
        columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${namaKereta}"));
        columnBinding.setColumnName("Nama Kereta");
        columnBinding.setColumnClass(String.class);
        columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${hargaTiket}"));
        columnBinding.setColumnName("Harga Tiket");
        columnBinding.setColumnClass(java.math.BigDecimal.class);
        columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${qty}"));
        columnBinding.setColumnName("Qty");
        columnBinding.setColumnClass(Integer.class);
        columnBinding = jTableBinding.addColumnBinding(org.jdesktop.beansbinding.ELProperty.create("${total}"));
        columnBinding.setColumnName("Total");
        columnBinding.setColumnClass(java.math.BigDecimal.class);
        bindingGroup.addBinding(jTableBinding);

        masterScrollPane.setViewportView(masterTable);

        namaLabel.setText("Nama:");

        nomorKtpLabel.setText("Nomor Ktp:");

        namaKeretaLabel.setText("Nama Kereta:");

        hargaTiketLabel.setText("Harga Tiket:");

        qtyLabel.setText("Qty:");

        totalLabel.setText("Total:");

        org.jdesktop.beansbinding.Binding binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement.nama}"), namaField, org.jdesktop.beansbinding.BeanProperty.create("text"));
        binding.setSourceUnreadableValue("null");
        bindingGroup.addBinding(binding);
        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement != null}"), namaField, org.jdesktop.beansbinding.BeanProperty.create("enabled"));
        bindingGroup.addBinding(binding);

        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement.nomorKtp}"), nomorKtpField, org.jdesktop.beansbinding.BeanProperty.create("text"));
        binding.setSourceUnreadableValue("null");
        bindingGroup.addBinding(binding);
        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement != null}"), nomorKtpField, org.jdesktop.beansbinding.BeanProperty.create("enabled"));
        bindingGroup.addBinding(binding);

        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement.namaKereta}"), namaKeretaField, org.jdesktop.beansbinding.BeanProperty.create("text"));
        binding.setSourceUnreadableValue("null");
        bindingGroup.addBinding(binding);
        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement != null}"), namaKeretaField, org.jdesktop.beansbinding.BeanProperty.create("enabled"));
        bindingGroup.addBinding(binding);

        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement.hargaTiket}"), hargaTiketField, org.jdesktop.beansbinding.BeanProperty.create("text"));
        binding.setSourceUnreadableValue("null");
        bindingGroup.addBinding(binding);
        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement != null}"), hargaTiketField, org.jdesktop.beansbinding.BeanProperty.create("enabled"));
        bindingGroup.addBinding(binding);

        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement.qty}"), qtyField, org.jdesktop.beansbinding.BeanProperty.create("text"));
        binding.setSourceUnreadableValue("null");
        bindingGroup.addBinding(binding);
        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement != null}"), qtyField, org.jdesktop.beansbinding.BeanProperty.create("enabled"));
        bindingGroup.addBinding(binding);

        qtyField.addFocusListener(formListener);

        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ_WRITE, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement.total}"), totalField, org.jdesktop.beansbinding.BeanProperty.create("text"));
        binding.setSourceUnreadableValue("null");
        bindingGroup.addBinding(binding);
        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement != null}"), totalField, org.jdesktop.beansbinding.BeanProperty.create("enabled"));
        bindingGroup.addBinding(binding);

        saveButton.setText("Save");
        saveButton.addActionListener(formListener);

        refreshButton.setText("Refresh");
        refreshButton.addActionListener(formListener);

        newButton.setText("New");
        newButton.addActionListener(formListener);

        deleteButton.setText("Delete");

        binding = org.jdesktop.beansbinding.Bindings.createAutoBinding(org.jdesktop.beansbinding.AutoBinding.UpdateStrategy.READ, masterTable, org.jdesktop.beansbinding.ELProperty.create("${selectedElement != null}"), deleteButton, org.jdesktop.beansbinding.BeanProperty.create("enabled"));
        bindingGroup.addBinding(binding);

        deleteButton.addActionListener(formListener);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(newButton)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(deleteButton)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(refreshButton)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(saveButton))
                    .addGroup(layout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(namaLabel)
                                    .addComponent(nomorKtpLabel)
                                    .addComponent(namaKeretaLabel)
                                    .addComponent(hargaTiketLabel)
                                    .addComponent(qtyLabel)
                                    .addComponent(totalLabel))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(namaField, javax.swing.GroupLayout.DEFAULT_SIZE, 315, Short.MAX_VALUE)
                                    .addComponent(nomorKtpField, javax.swing.GroupLayout.DEFAULT_SIZE, 315, Short.MAX_VALUE)
                                    .addComponent(namaKeretaField, javax.swing.GroupLayout.DEFAULT_SIZE, 315, Short.MAX_VALUE)
                                    .addComponent(hargaTiketField, javax.swing.GroupLayout.DEFAULT_SIZE, 315, Short.MAX_VALUE)
                                    .addComponent(qtyField, javax.swing.GroupLayout.DEFAULT_SIZE, 315, Short.MAX_VALUE)
                                    .addComponent(totalField, javax.swing.GroupLayout.DEFAULT_SIZE, 315, Short.MAX_VALUE)))
                            .addComponent(masterScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 380, Short.MAX_VALUE))))
                .addContainerGap())
        );

        layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {deleteButton, newButton, refreshButton, saveButton});

        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(masterScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 130, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(namaLabel)
                    .addComponent(namaField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(nomorKtpLabel)
                    .addComponent(nomorKtpField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(namaKeretaLabel)
                    .addComponent(namaKeretaField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(hargaTiketLabel)
                    .addComponent(hargaTiketField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(qtyLabel)
                    .addComponent(qtyField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(totalLabel)
                    .addComponent(totalField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(saveButton)
                    .addComponent(refreshButton)
                    .addComponent(deleteButton)
                    .addComponent(newButton))
                .addContainerGap())
        );

        bindingGroup.bind();
    }

    // Code for dispatching events from components to event handlers.

    private class FormListener implements java.awt.event.ActionListener, java.awt.event.FocusListener {
        FormListener() {}
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            if (evt.getSource() == saveButton) {
                formTickets.this.saveButtonActionPerformed(evt);
            }
            else if (evt.getSource() == refreshButton) {
                formTickets.this.refreshButtonActionPerformed(evt);
            }
            else if (evt.getSource() == newButton) {
                formTickets.this.newButtonActionPerformed(evt);
            }
            else if (evt.getSource() == deleteButton) {
                formTickets.this.deleteButtonActionPerformed(evt);
            }
        }

        public void focusGained(java.awt.event.FocusEvent evt) {
        }

        public void focusLost(java.awt.event.FocusEvent evt) {
            if (evt.getSource() == qtyField) {
                formTickets.this.qtyFieldFocusLost(evt);
            }
        }
    }// </editor-fold>                       

   

    @SuppressWarnings("unchecked")
    private void refreshButtonActionPerformed(java.awt.event.ActionEvent evt) {                                             
        entityManager.getTransaction().rollback();
        entityManager.getTransaction().begin();
        java.util.Collection data = query.getResultList();
        for (Object entity : data) {
            entityManager.refresh(entity);
        }
        list.clear();
        list.addAll(data);
    }                                            

    private void deleteButtonActionPerformed(java.awt.event.ActionEvent evt) {                                            
        int[] selected = masterTable.getSelectedRows();
        List<tugas_uas.Tbtiket> toRemove = new ArrayList<tugas_uas.Tbtiket>(selected.length);
        for (int idx = 0; idx < selected.length; idx++) {
            tugas_uas.Tbtiket t = list.get(masterTable.convertRowIndexToModel(selected[idx]));
            toRemove.add(t);
            entityManager.remove(t);
        }
        list.removeAll(toRemove);
    }                                           

    private void newButtonActionPerformed(java.awt.event.ActionEvent evt) {                                         
        tugas_uas.Tbtiket t = new tugas_uas.Tbtiket();
        entityManager.persist(t);
        list.add(t);
        int row = list.size() - 1;
        masterTable.setRowSelectionInterval(row, row);
        masterTable.scrollRectToVisible(masterTable.getCellRect(row, 0, true));
    }                                        
   
    private void saveButtonActionPerformed(java.awt.event.ActionEvent evt) {                                          
        try {
            entityManager.getTransaction().commit();
            entityManager.getTransaction().begin();
        } catch (RollbackException rex) {
            rex.printStackTrace();
            entityManager.getTransaction().begin();
            List<tugas_uas.Tbtiket> merged = new ArrayList<tugas_uas.Tbtiket>(list.size());
            for (tugas_uas.Tbtiket t : list) {
                merged.add(entityManager.merge(t));
            }
            list.clear();
            list.addAll(merged);
        }
    }                                         

    private void qtyFieldFocusLost(java.awt.event.FocusEvent evt) {                                  
        // TODO add your handling code here:
        try {
        harga_tiket = Double.valueOf(hargaTiketField.getText());
            qty = Double.valueOf(qtyField.getText());
            hasil = harga_tiket*qty;
            totalField.setText(hasil+"");
   
          } catch(Exception e) { }
    }                                 


    // Variables declaration - do not modify                    
    private javax.swing.JButton deleteButton;
    private javax.persistence.EntityManager entityManager;
    private javax.swing.JTextField hargaTiketField;
    private javax.swing.JLabel hargaTiketLabel;
    private java.util.List<tugas_uas.Tbtiket> list;
    private javax.swing.JScrollPane masterScrollPane;
    private javax.swing.JTable masterTable;
    private javax.swing.JTextField namaField;
    private javax.swing.JTextField namaKeretaField;
    private javax.swing.JLabel namaKeretaLabel;
    private javax.swing.JLabel namaLabel;
    private javax.swing.JButton newButton;
    private javax.swing.JTextField nomorKtpField;
    private javax.swing.JLabel nomorKtpLabel;
    private javax.swing.JTextField qtyField;
    private javax.swing.JLabel qtyLabel;
    private javax.persistence.Query query;
    private javax.swing.JButton refreshButton;
    private javax.swing.JButton saveButton;
    private javax.swing.JTextField totalField;
    private javax.swing.JLabel totalLabel;
    private org.jdesktop.beansbinding.BindingGroup bindingGroup;
    // End of variables declaration                  
    public static void main(String[] args) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(formTickets.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(formTickets.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(formTickets.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(formTickets.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                JFrame frame = new JFrame();
                frame.setContentPane(new formTickets());
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.pack();
                frame.setVisible(true);
            }
        });
    }
   
}

Kamis, 01 Mei 2014

Java Basic Netbeans : Membuat Aplikasi Sistem Parkir Mengunakan Gui Iframe


Hay Para Teman-Teman sudah lama saya tidak update blog ini . karena kesibukan saya kuliah dan kerja hehehe :D . kali ini saya akan membahas sedikit Tentang tugas dari tempat saya kuliah . Tentang Pembuatan Aplikasi java Iframe . di sini saya akan membuat aplikasi Sistem Kerja Parkir. saya tidak akan panjang lebar menjelasakan Scrip dan funginya karena keterbataan waktu . tapi kalo ada yang ingin bertanya Bisa langsung ke Twitter saya di @faizfufu .

1 Pertama buat Desain Iframe seperti ini .

- Berikut code atau scripnya
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
/**
 *
 * @author faiz
 */
public class parkir extends javax.swing.JFrame {
    /**
     * Creates new form parkir
     */
    public parkir() {
        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() {
        jLabel1 = new javax.swing.JLabel();
        in = new javax.swing.JTextField();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        m = new javax.swing.JCheckBox();
        t = new javax.swing.JCheckBox();
        k = new javax.swing.JCheckBox();
        nopol = new javax.swing.JTextField();
        hp = new javax.swing.JTextField();
        total = new javax.swing.JTextField();
        jButton1 = new javax.swing.JButton();
        jLabel6 = new javax.swing.JLabel();
        out = new javax.swing.JTextField();
        jLabel7 = new javax.swing.JLabel();
        lp = new javax.swing.JTextField();
        jLabel8 = new javax.swing.JLabel();
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        jLabel1.setText("No.Polisi");
        jLabel2.setText("Jam masuk");
        jLabel3.setText("jenis kendaraan");
        jLabel4.setText("Harga Parkir");
        jLabel5.setText("Total Bayar Parkir ");
        m.setText("Motor");
        m.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                mActionPerformed(evt);
            }
        });
        t.setText("Truk");
        t.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tActionPerformed(evt);
            }
        });
        k.setText("Kendaraan Pribadi");
        k.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                kActionPerformed(evt);
            }
        });
        nopol.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                nopolActionPerformed(evt);
            }
        });
        jButton1.setText("Hitung");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        jLabel6.setText("Jam keluar");
        jLabel7.setText("Lama Parkir");
        jLabel8.setText("Parkiran STIMIK ERESHA ");
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(jButton1)
                .addGap(92, 92, 92))
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGap(202, 202, 202))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(m)
                                    .addComponent(jLabel4))
                                .addGap(31, 31, 31)
                                .addComponent(t)
                                .addGap(18, 18, 18)
                                .addComponent(k))
                            .addComponent(jLabel3, javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jLabel2)
                                    .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(47, 47, 47)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(nopol, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(in, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addContainerGap(239, Short.MAX_VALUE))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addGap(22, 22, 22)
                                .addComponent(lp, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel5)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(out, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(hp, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(total, javax.swing.GroupLayout.PREFERRED_SIZE, 121, javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addGap(59, 59, 59))))
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 236, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jLabel8)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 44, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(nopol, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel1))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(in, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel2, javax.swing.GroupLayout.Alignment.TRAILING))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jLabel3)
                .addGap(4, 4, 4)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(m)
                    .addComponent(t)
                    .addComponent(k))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel4)
                    .addComponent(hp, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(out, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(2, 2, 2)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(lp, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(total, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel5))
                .addGap(14, 14, 14)
                .addComponent(jButton1)
                .addGap(25, 25, 25))
        );
        pack();
    }// </editor-fold>                       
    private void nopolActionPerformed(java.awt.event.ActionEvent evt) {                                     
        // TODO add your handling code here:
    }                                    
    private void mActionPerformed(java.awt.event.ActionEvent evt) {                                 
if (m.isSelected()){
hp.setText("2000");
}else{
hp.setText("0");
}
        // TODO add your handling code here:
    }                                
    private void tActionPerformed(java.awt.event.ActionEvent evt) {                                 
if (t.isSelected()){
hp.setText("4000");
}else{
hp.setText("0");
}
        // TODO add your handling code here:
    }                                
    private void kActionPerformed(java.awt.event.ActionEvent evt) {                                 
if (k.isSelected()){
hp.setText("3000");
}else{
hp.setText("0");
}
        // TODO add your handling code here:
    }                                
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                        
double masuk,keluar,lamaparkir;
masuk=Double.valueOf(in.getText());
keluar=Double.valueOf(out.getText());
lamaparkir=keluar-masuk;
lp.setText(Double.toString(lamaparkir));
double hp2=Integer.parseInt(hp.getText());
double lp1=Double.valueOf(lp.getText());
double tb=hp2*lp1;
total.setText(Double.toString(tb));
        // TODO add your handling code here:
    }                                       
    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(parkir.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(parkir.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(parkir.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(parkir.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>
        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new parkir().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                    
    private javax.swing.JTextField hp;
    private javax.swing.JTextField in;
    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    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.JCheckBox k;
    private javax.swing.JTextField lp;
    private javax.swing.JCheckBox m;
    private javax.swing.JTextField nopol;
    private javax.swing.JTextField out;
    private javax.swing.JCheckBox t;
    private javax.swing.JTextField total;
    // End of variables declaration                  
}

Senin, 27 Januari 2014

Cara Membuat Form Penghitungan Dalam JAVA Dengan Netbeans



package tugas03;

public class JTugas03 extends javax.swing.JFrame {
    String angka;
   
    Double jumlah, bil1, bil2;
   
    int option;

    public JTugas03() {
        initComponents();
       
        angka = "";
    }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                         
    private void initComponents() {

        jButton1 = new javax.swing.JButton();
        layar = new javax.swing.JTextField();
        btnTujuh = new javax.swing.JButton();
        btnEmpat = new javax.swing.JButton();
        btnSatu = new javax.swing.JButton();
        btnNol = new javax.swing.JButton();
        btnDelapan = new javax.swing.JButton();
        btnLima = new javax.swing.JButton();
        btnDua = new javax.swing.JButton();
        btnTiga = new javax.swing.JButton();
        btnEnam = new javax.swing.JButton();
        btnSembilan = new javax.swing.JButton();
        btnKoma = new javax.swing.JButton();
        btnClear = new javax.swing.JButton();
        btnKali = new javax.swing.JButton();
        btnBagi = new javax.swing.JButton();
        btnKurang = new javax.swing.JButton();
        btnTambah = new javax.swing.JButton();
        btnEqual = new javax.swing.JButton();

        jButton1.setText("jButton1");

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("CALC");
        setBackground(new java.awt.Color(255, 29, 29));
        setForeground(java.awt.Color.magenta);
        setPreferredSize(new java.awt.Dimension(230, 320));

        layar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                layarActionPerformed(evt);
            }
        });

        btnTujuh.setText("7");
        btnTujuh.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnTujuhActionPerformed(evt);
            }
        });

        btnEmpat.setText("4");
        btnEmpat.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnEmpatActionPerformed(evt);
            }
        });

        btnSatu.setText("1");
        btnSatu.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnSatuActionPerformed(evt);
            }
        });

        btnNol.setText("0");
        btnNol.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnNolActionPerformed(evt);
            }
        });

        btnDelapan.setText("8");
        btnDelapan.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnDelapanActionPerformed(evt);
            }
        });

        btnLima.setText("5");
        btnLima.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnLimaActionPerformed(evt);
            }
        });

        btnDua.setText("2");
        btnDua.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnDuaActionPerformed(evt);
            }
        });

        btnTiga.setText("3");
        btnTiga.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnTigaActionPerformed(evt);
            }
        });

        btnEnam.setText("6");
        btnEnam.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnEnamActionPerformed(evt);
            }
        });

        btnSembilan.setText("9");
        btnSembilan.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnSembilanActionPerformed(evt);
            }
        });

        btnKoma.setText(".");
        btnKoma.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnKomaActionPerformed(evt);
            }
        });

        btnClear.setText("C");
        btnClear.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnClearActionPerformed(evt);
            }
        });

        btnKali.setText("*");
        btnKali.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnKaliActionPerformed(evt);
            }
        });

        btnBagi.setText("/");
        btnBagi.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnBagiActionPerformed(evt);
            }
        });

        btnKurang.setText("-");
        btnKurang.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnKurangActionPerformed(evt);
            }
        });

        btnTambah.setText("+");
        btnTambah.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnTambahActionPerformed(evt);
            }
        });

        btnEqual.setText("=");
        btnEqual.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnEqualActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGap(0, 0, Short.MAX_VALUE)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                                        .addComponent(btnTujuh, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(btnDelapan, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(btnSembilan, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                                            .addComponent(btnEmpat, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(btnLima, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(btnEnam, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                                            .addComponent(btnSatu, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(btnDua, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                            .addComponent(btnTiga, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)))))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(btnNol, javax.swing.GroupLayout.PREFERRED_SIZE, 96, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(btnKoma, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(0, 0, Short.MAX_VALUE)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(btnTambah, javax.swing.GroupLayout.DEFAULT_SIZE, 45, Short.MAX_VALUE)
                            .addComponent(btnEqual, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addGap(271, 271, 271))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(layar, javax.swing.GroupLayout.PREFERRED_SIZE, 198, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(btnClear, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnBagi, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnKali, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnKurang, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, Short.MAX_VALUE))))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(49, 49, 49)
                .addComponent(layar, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(13, 13, 13)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(btnClear, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(btnBagi, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(btnKali, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(btnKurang, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(btnTambah, javax.swing.GroupLayout.PREFERRED_SIZE, 66, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(btnDelapan, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(btnTujuh, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(btnSembilan, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(btnEnam, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(btnLima, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(btnEmpat, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(btnDua, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(btnSatu, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(btnTiga, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(btnNol, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(btnKoma, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addComponent(btnEqual, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
                .addContainerGap(269, Short.MAX_VALUE))
        );

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

    private void layarActionPerformed(java.awt.event.ActionEvent evt) {                                     
        layar.setText("");
        // TODO add your handling code here:
    }                                    

    private void btnNolActionPerformed(java.awt.event.ActionEvent evt) {                                      
        angka += "0";
        layar.setText(angka);
        // TODO add your handling code here:
    }                                     

    private void btnSatuActionPerformed(java.awt.event.ActionEvent evt) {                                       
        angka += "1";
        layar.setText(angka);       
        // TODO add your handling code here:
    }                                      

    private void btnDuaActionPerformed(java.awt.event.ActionEvent evt) {                                      
        angka += "2";
        layar.setText(angka);       
        // TODO add your handling code here:
    }                                     

    private void btnTigaActionPerformed(java.awt.event.ActionEvent evt) {                                       
        angka += "3";
        layar.setText(angka);       
        // TODO add your handling code here:
    }                                      

    private void btnEmpatActionPerformed(java.awt.event.ActionEvent evt) {                                        
        angka += "4";
        layar.setText(angka);
        // TODO add your handling code here:
    }                                       

    private void btnLimaActionPerformed(java.awt.event.ActionEvent evt) {                                       
        angka += "5";
        layar.setText(angka);
        // TODO add your handling code here:
    }                                      

    private void btnEnamActionPerformed(java.awt.event.ActionEvent evt) {                                       
        angka += "6";
        layar.setText(angka);               
        // TODO add your handling code here:
    }                                      

    private void btnTujuhActionPerformed(java.awt.event.ActionEvent evt) {                                        
        angka += "7";
        layar.setText(angka);
        // TODO add your handling code here:
    }                                       

    private void btnDelapanActionPerformed(java.awt.event.ActionEvent evt) {                                          
        angka += "8";
        layar.setText(angka);       
        // TODO add your handling code here:
    }                                         

    private void btnSembilanActionPerformed(java.awt.event.ActionEvent evt) {                                           
        angka += "9";
        layar.setText(angka);
        // TODO add your handling code here:
    }                                          

    private void btnEqualActionPerformed(java.awt.event.ActionEvent evt) {                                        
        switch(option) {
            case 1:
                bil2    = Double.parseDouble(angka);
                jumlah  = bil1 + bil2;
                angka   = Double.toString(jumlah);
               
                layar.setText(angka);
            break;
            case 2:
                bil2    = Double.parseDouble(angka);
                jumlah  = bil1 - bil2;
                angka   = Double.toString(jumlah);
               
                layar.setText(angka);
            break;
            case 3:
                bil2    = Double.parseDouble(angka);
                jumlah  = bil1 * bil2;
                angka   = Double.toString(jumlah);
               
                layar.setText(angka);
            break;
            case 4:
                bil2    = Double.parseDouble(angka);
                jumlah  = bil1 / bil2;
                angka   = Double.toString(jumlah);
               
                layar.setText(angka);
            break;
            default:
            break;
        }
        // TODO add your handling code here:
    }                                       

    private void btnTambahActionPerformed(java.awt.event.ActionEvent evt) {                                         
        bil1 = Double.parseDouble(angka);
        layar.setText("+");
        angka = "";
        option = 1;
        // TODO add your handling code here:
    }                                        

    private void btnKurangActionPerformed(java.awt.event.ActionEvent evt) {                                         
        bil1 = Double.parseDouble(angka);
        layar.setText("-");
        angka = "";
        option = 2;
        // TODO add your handling code here:
    }                                        

    private void btnKaliActionPerformed(java.awt.event.ActionEvent evt) {                                       
        bil1 = Double.parseDouble(angka);
        layar.setText("*");
        angka = "";
        option = 3;
        // TODO add your handling code here:
    }                                      

    private void btnBagiActionPerformed(java.awt.event.ActionEvent evt) {                                       
        bil1 = Double.parseDouble(angka);
        layar.setText("/");
        angka = "";
        option = 4;
        // TODO add your handling code here:
    }                                      

    private void btnKomaActionPerformed(java.awt.event.ActionEvent evt) {                                       
        angka += ".";
        layar.setText(angka);
        // TODO add your handling code here:
    }                                      

    private void btnClearActionPerformed(java.awt.event.ActionEvent evt) {                                        
        angka = "";
        layar.setText("0");
        // TODO add your handling code here:
    }                                       

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(JTugas03.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(JTugas03.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(JTugas03.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(JTugas03.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new JTugas03().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                    
    private javax.swing.JButton btnBagi;
    private javax.swing.JButton btnClear;
    private javax.swing.JButton btnDelapan;
    private javax.swing.JButton btnDua;
    private javax.swing.JButton btnEmpat;
    private javax.swing.JButton btnEnam;
    private javax.swing.JButton btnEqual;
    private javax.swing.JButton btnKali;
    private javax.swing.JButton btnKoma;
    private javax.swing.JButton btnKurang;
    private javax.swing.JButton btnLima;
    private javax.swing.JButton btnNol;
    private javax.swing.JButton btnSatu;
    private javax.swing.JButton btnSembilan;
    private javax.swing.JButton btnTambah;
    private javax.swing.JButton btnTiga;
    private javax.swing.JButton btnTujuh;
    private javax.swing.JButton jButton1;
    private javax.swing.JTextField layar;
    // End of variables declaration                  
}