Breaking News

Monday 8 May 2017

Latihan Java 2

Latihan Java 2 






koneksi






Coding class

package Latihan_Java2;

import java.awt.EventQueue;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JTextField;
import java.sql.*;

public class keyTextField extends KeyAdapter {

    private JTextField txtField;
    @SuppressWarnings("rawtypes")
    private List daftar;

    @SuppressWarnings("rawtypes")
    public keyTextField(JTextField txtFieldParam) {
        txtField = txtFieldParam;
        daftar = new ArrayList();
        databaseNama();
    }

    public void keyPressed(KeyEvent key) {
        switch (key.getKeyCode()) {
            case KeyEvent.VK_BACK_SPACE:
                break;
            case KeyEvent.VK_ENTER:
                txtField.setText(txtField.getText());
                break;
            default:
                EventQueue.invokeLater(new Runnable() {
                    @Override
                    public void run() {
                        // TODO Auto-generated method stub
                        String kt = txtField.getText();
                        autoComplete(kt);

                    }
                });
        }

    }

    public void autoComplete(String kt) {
        String complete = "";
        int start = kt.length();
        int last = kt.length();
        int a;

        for (a = 0; a < daftar.size(); a++) {
            if (daftar.get(a).toString().startsWith(kt)) {
                complete = daftar.get(a).toString();
                last = complete.length();
                break;
            }
        }
        if (last > start) {
            txtField.setText(complete);
            txtField.setCaretPosition(last);
            txtField.moveCaretPosition(start);
        }
    }

    @SuppressWarnings("unchecked")
    public void databaseNama() {
        try {
            Connection konek = Koneksi.getKoneksi();
            Statement state = konek.createStatement();
            String query = "SELECT Nama FROM Data";
            ResultSet rs = state.executeQuery(query);
            while (rs.next()) {
                daftar.add(rs.getString(1));
            }
            rs.close();
            state.close();
        } catch (Exception ex) {
            System.out.println(ex);
        }
    }
}


Coding frame class auto complete


package Latihan_Java2;

import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JTextArea;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JButton;
import java.sql.PreparedStatement;
import javax.swing.ImageIcon;
import java.awt.Font;


@SuppressWarnings("serial")
public class FrameTextField extends JFrame 
{

private JPanel contentPane;
private JTextField txtNama;
private JLabel lblAlamat;
private JTextArea textAlamat;
private JTextField txtTelp;
private JLabel lblBg;
private JLabel lblAuto;

/**
* Create the frame.
*/
public FrameTextField() 
{
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 585, 318);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lblNama = new JLabel("Nama : ");
lblNama.setBounds(12, 17, 70, 15);
contentPane.add(lblNama);
txtNama = new JTextField();
txtNama.addActionListener(new ActionListener() 
{
public void actionPerformed(ActionEvent act) 
{
try
{
Connection konek = Koneksi.getKoneksi();
Statement state = konek.createStatement();
String query = "SELECT Alamat,Telp FROM Data WHERE Nama = '"+txtNama.getText()+"'";
ResultSet rs = state.executeQuery(query);
while(rs.next())
{
textAlamat.setText(rs.getString(1));
txtTelp.setText(rs.getString(2));
}
rs.close();
state.close();
}
catch(Exception ex)
{
System.out.println(ex);
}
}
});
txtNama.setBounds(91, 10, 245, 29);
contentPane.add(txtNama);
txtNama.setColumns(10);
setLocationRelativeTo(null);
txtNama.addKeyListener(new keyTextField(txtNama));
lblAlamat = new JLabel("Alamat : ");
lblAlamat.setBounds(12, 51, 70, 15);
contentPane.add(lblAlamat);
textAlamat = new JTextArea();
textAlamat.setBounds(91, 51, 275, 103);
contentPane.add(textAlamat);
JButton btnSimpan = new JButton("Simpan");
btnSimpan.setIcon(new ImageIcon("C:/MASTER_JAVA/Latihan_Java2/src/Gambar/Simpan.png"));
btnSimpan.addActionListener(new ActionListener() 
{
public void actionPerformed(ActionEvent act) 
{
try
{
Connection konek = Koneksi.getKoneksi();
String query = "INSERT INTO Data VALUES(?,?,?)";
PreparedStatement prepare = konek.prepareStatement(query);
prepare.setString(1,txtNama.getText());
prepare.setString(2,textAlamat.getText());
prepare.setString(3,txtTelp.getText());
prepare.executeUpdate();
JOptionPane.showMessageDialog(null,"Data berhasil disimpan","Pesan",JOptionPane.INFORMATION_MESSAGE);
prepare.close();
}
catch(Exception ex)
{
JOptionPane.showMessageDialog(null,"Data gagal disimpan","Pesan",JOptionPane.INFORMATION_MESSAGE);
System.out.println(ex);
}
finally
{
txtNama.setText("");
textAlamat.setText("");
txtTelp.setText("");
txtNama.requestFocus();
}
}
});
btnSimpan.setBounds(91, 220, 130, 44);
contentPane.add(btnSimpan);
JButton btnKeluar = new JButton("Keluar");
btnKeluar.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent act)
{
JOptionPane.showMessageDialog(null, "Terima kasih","Pesan",JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
});
btnKeluar.setIcon(new ImageIcon("C:/MASTER_JAVA/Latihan_Java2/src/Gambar/hapus.png"));
btnKeluar.setBounds(266, 220, 130, 44);
contentPane.add(btnKeluar);
JLabel lblNotelp = new JLabel("No.Telp : ");
lblNotelp.setBounds(12, 176, 80, 15);
contentPane.add(lblNotelp);
txtTelp = new JTextField();
txtTelp.setBounds(91, 166, 233, 27);
contentPane.add(txtTelp);
txtTelp.setColumns(10);
lblAuto = new JLabel("* AutoComplete Text");
lblAuto.setFont(new Font("FreeSerif", Font.PLAIN, 15));
lblAuto.setBounds(348, 17, 179, 15);
contentPane.add(lblAuto);
JLabel lblIcon = new JLabel("");
lblIcon.setIcon(new ImageIcon("C:/MASTER_JAVA/Latihan_Java2/src/Gambar/mobil.png"));
lblIcon.setBounds(398, 70, 159, 135);
contentPane.add(lblIcon);
lblBg = new JLabel("");
lblBg.setIcon(new ImageIcon("C:/MASTER_JAVA/Latihan_Java2/src/Gambar/pinkBg.jpg"));
lblBg.setBounds(0, 0, 589, 296);
contentPane.add(lblBg);
}
/**
* Launch the application.
*/
public static void main(String[] args) 
{
EventQueue.invokeLater(new Runnable() 
{
public void run() 
{
try 
{
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
FrameTextField frame = new FrameTextField();
frame.setVisible(true);
catch (UnsupportedLookAndFeelException e) {
catch (ClassNotFoundException e){
catch (InstantiationException e) {
catch (IllegalAccessException e) {
}
}
});
}
}

Download source disini jangan lupa ektrak  copy di C :






Post a Comment