Tampilkan postingan dengan label Java Swing. Tampilkan semua postingan
Tampilkan postingan dengan label Java Swing. Tampilkan semua postingan

Kamis, 20 November 2014

Membatasi Panjang Karakter pada JTextField

Kadangkala ketika kita membuat sebuah aplikasi/program membutuhkan batasan panjang tertentu terhadap field inputan. Misalkan field "User ID" maksimal panjang karakter adalah 5 huruf.

Contoh Program


Di bawah ini adalah contoh program untuk membatasi panjang karakter pada JTextField.

Nama File : JTextFieldLengthLimitDemo.java

package com.nursalim.zone.java.swing;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.LookAndFeel;
import javax.swing.UIManager;
import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;

public class JTextFieldLengthLimitDemo extends JFrame {
/**
*
*/
private static final long serialVersionUID = -2557628370374830362L;
private JTextField textField;
private JLabel label;
private JPanel panel;
private Integer limit = 5; // Maksimal 5 Karakter

public JTextFieldLengthLimitDemo() {
initComponents();
add(panel);
textField.setDocument(new PlainDocument(){
@Override
public void insertString(int offset, String str, AttributeSet attributeSet) throws BadLocationException {
if(getLength() + str.length() <= limit){
super.insertString(offset, str, attributeSet);
}else{
label.setText("Panjang Maksimal User ID "+limit+" Huruf");
}
}
});
}

private void initComponents(){
textField = new JTextField(20);
label = new JLabel("User ID");
panel = new JPanel();

panel.add(textField);
panel.add(label);

setTitle("JTextFild Limit");
setSize(400, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setResizable(false);
}

public static void main (String[] arg){
try{
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
new JTextFieldLengthLimitDemo().setVisible(true);
}catch(Exception ex){

}
}
}


Compile & Running 


Coba compile dan jalankan program diatas, maka akan tampil gambar seperti dibawah ini :
Coba masukkan karakter/kata lebih, maka akan tampil message seperti dibawah ini :

 
Sekian tutorial singkat tentang "Membatasi Panjang Karakter pada JTextField". Semoga bermanfaat & Happy Learning :)