Martinus Ady H. BlOg

June 8, 2006

Meng-hidden dan Meng-unhidden JPanel di Java.

Filed under: Java

Meng-hidden dan Meng-unhidden JPanel di Java.

Hhihiiiihi….
Judulnya lucu banget, maklum bhs indonesia ancur ;p (alesan ajah :P )
Kemaren abis baca-baca thread di http://diskusiweb.com/viewthread.php?tid=17640 di bagian
java umum thread help(Masalah hide dan unhide JInternalFrame).

Kebetulan neh, saya dirumah juga lagi pengen bisa bikin tampilan yang punya
tombol kayak gini(gambar ini di ambil dari program MySQLBrowser)

Dan jika tombolnya itu di klik maka akan muncul tampilan kayak gini

Akhirnya setelah ampe dirumah coba dipraktekin :) . Gimana ya klo di coba
di JPanel bukan di JInternalFrame ???
Akhirnya iseng-iseng bikin program dengan code spt dibawah ini:


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
	
public class showPanel extends JFrame implements ActionListener {
    private JPanel panelAtas, panelTengah, panelBawah;
    private JButton btnAddUser, btnShow;
    private JTextField txtFieldNama, txtFieldCompany;
    private JLabel labelNama, labelCompany;
	
    public showPanel() {
        createGUI();
    }
	
    private void createGUI() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
	
        setAtas();
        setTengah();
        setBawah();
	
        getContentPane().setLayout(new BorderLayout());
        getContentPane().add(panelAtas, BorderLayout.NORTH);
        getContentPane().add(panelTengah, BorderLayout.CENTER);
        getContentPane().add(panelBawah, BorderLayout.SOUTH);
	
        setVisible(true);
        pack();
    }
	
    private void setAtas() {
        panelAtas = new JPanel();
        labelNama = new JLabel(\"Input Nama: \");
        txtFieldNama = new JTextField(20);
	
        panelAtas.setLayout(new FlowLayout());
        panelAtas.add(labelNama);
        panelAtas.add(txtFieldNama);
    }
	
    private void setTengah() {
        panelTengah = new JPanel();
        JLabel label = new JLabel(\"Detail konfirmasi\");
	
        panelTengah.add(label);
        panelTengah.setVisible(false);
    }
	
    private void setBawah() {
        panelBawah = new JPanel();
        btnAddUser = new JButton(\"User\");
        btnShow = new JButton(\"Detail >>\");
	
        btnAddUser.addActionListener(this);
        btnShow.addActionListener(this);
	
        panelBawah.add(btnAddUser);
        panelBawah.add(btnShow);
    }
	
    public void actionPerformed(ActionEvent e) {
        Object obj = e.getSource();
	
        if(obj == btnAddUser) {
            JOptionPane.showMessageDialog(null, \"Ihui sukses boox :P \”);
        }
	
        if(obj == btnShow) {
            // Thx to masnewuser ^*^ baru ketemu setelah baca
                        // postingan sampeyan mas :)
            if(!panelTengah.isVisible()) {
                panelTengah.setVisible(true);
                btnShow.setText(\”Detail < <\");
                pack();
            } else {
                panelTengah.setVisible(false);
                btnShow.setText(\"Detail >>\”);
                pack();
            }
        }
    }   
	
    // Main
    public static void main(String[] args) {
        new showPanel();
    }
}

Setelah disimpan kemudian dicompile hasilnya adalah sebagai berikut:

Setelah btn Detail di klik maka tampilannya adalah sbb:

Hmmmmm….. asyik kan :)
Tapi gimana yach klo di dalam panel tsb ada panel lagi ?
Pengaruh ndak ya ???

Tapi klo pengen buat tampilan yang kek gini gimana yack caranya ??

Apakah make JInternalFrame ? (Klo make ini gimana gapnya yach ? )
JPanel ? (Keknya mungkin make ini, tapi gapnya ? )
(Ini omongnya ga make IDE :D , emang kurang kerjaan seh disaat ada IDE secanggih NetBeans koq ga mau make IDE :P . Tapi gw masih pengen oprek2x di textpad :) dulu, ntar klo ada yg mendesak n perlu dikerjain cepet baru deh keluarin IDE-nya :P )

Fyuah…. pusing :D
Satu-satu dulu ajah ah, kapasitas otak terbatas :)

3 Comments »

The URI to TrackBack this entry is: http://pemula.blogsome.com/2006/06/08/meng-hidden-dan-meng-unhidden-jpanel-di-java/trackback/

  1. good

    Comment by tyo — August 14, 2006 @ 5:23 am

  2. good…tapi lebih gampang gimana kl ukurannya aja yang diperkecil dengan asumsi setResizable=false.jd ga usah banyak coding lagi.

    Comment by tyo — August 14, 2006 @ 5:30 am

  3. Maksudnya gimana yach mas ???
    Ukurannya yg diperkecil ??

    Bukannya setResizable=false itu untuk menghilangkan tombol resize ??

    Comment by Administrator — August 14, 2006 @ 1:37 pm

RSS feed for comments on this post.

Leave a comment

Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>


Get free blog up and running in minutes with Blogsome
Theme designed by Gary Rogers