Java jTextfield Nedir
JTextField, javax.swing paketinin bir parçasıdır. JTextField sınıfı, tek bir metin satırının düzenlenmesine izin veren bir bileşendir. JTextField JTextComponent sınıfını devralır ve SwingConstants arabirimini kullanır.
Sınıfın kurucusu:
- JTextField(): yeni bir TextField oluşturan yapıcı
- JTextField(int sütunlar): belirtilen sayıda sütunla yeni bir boş TextField oluşturan yapıcı.
- JTextField(String text): verilen dize ile başlatılan yeni bir boş metin alanı oluşturan yapıcı.
- JTextField(Dize metni, int sütunlar): verilen dize ve belirtilen sayıda sütunla yeni bir boş textField oluşturan yapıcı.
- JTextField(Belge dokümanı, Dize metni, int sütunlar): verilen metin depolama modelini ve verilen sütun sayısını kullanan bir metin alanı oluşturan yapıcı.
JTextField Metotları Şunlardır:
- setColumns(int n): metin alanının sütun sayısını ayarlamanızı sağlar.
- setFont(Font f): metin alanında görüntülenen metnin fontunu ayarlamanızı sağlar.
- addActionListener(ActionListener l): metin alanına bir ActionListener ayarlamanızı sağlar.
- int getColumns(): metin alanındaki sütun sayısını almanızı sağlar.
JTextField uygulayacak programlar aşağıdadır.
Java TextField Örnekleri
Örnek: Ekrana 2 tane java textfield nesnesi yerleştirme
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
import javax.swing.*; public class JavaOrnekler{ public static void main(String[] args) { JFrame f= new JFrame("Tasarım Kodlama"); JTextField t1,t2; t1=new JTextField("TextField Kullanımı"); t1.setBounds(50,20, 250,30); t2=new JTextField("TextField Örnekleri"); t2.setBounds(50,70, 250,30); f.add(t1); f.add(t2); f.setSize(400,200); f.setLayout(null); f.setVisible(true); } } |
Örnek: Java TextField’den veri alma ve alınan verileri toplamak için program.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
import javax.swing.*; import java.awt.event.*; public class JavaOrnekler implements ActionListener{ JTextField tf1,tf2,tf3; JButton b1,b2; //kurucu metot JavaOrnekler(){ JFrame f= new JFrame(); tf1=new JTextField(); tf1.setBounds(50,50,50,30); tf2=new JTextField(); tf2.setBounds(120,50,50,30); tf3=new JTextField(); tf3.setBounds(50,90,120,20); tf3.setEditable(false); b1=new JButton("+"); b1.setBounds(50,120,50,50); b2=new JButton("-"); b2.setBounds(120,120,50,50); b1.addActionListener(this); b2.addActionListener(this); f.add(tf1); f.add(tf2); f.add(tf3); f.add(b1); f.add(b2); f.setSize(250,250); f.setLayout(null); f.setVisible(true); } public void actionPerformed(ActionEvent e) { String s1=tf1.getText(); String s2=tf2.getText(); int a=Integer.parseInt(s1); int b=Integer.parseInt(s2); int c=0; if(e.getSource()==b1){ c=a+b; }else if(e.getSource()==b2){ c=a-b; } String result=String.valueOf(c); tf3.setText(result); } public static void main(String[] args) { new JavaOrnekler(); } } |
Örnek: Belirli sayıda sütun içeren boş bir metin alanı oluşturmak için program.
Kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
import java.awt.event.*; import javax.swing.*; public class JavaOrnekler extends JFrame implements ActionListener{ // JTextField static JTextField t; // JFrame static JFrame f; // JButton static JButton b; // JLabel static JLabel l; //Sınıfın kurucusu JavaOrnekler(){ }; public static void main(String[] args) { // Nesneleri eklemek için yeni bir tane frame oluştur f = new JFrame("textfield"); // bir tane label nesnesi oluştur l = new JLabel("giriş yapılmadı"); // yeni bir tane buton oluştur b = new JButton("Kaydet"); // JavaOrnekleri nesnesinin bir örneğini oluştur JavaOrnekler javaornekleri = new JavaOrnekler(); // addActionListener to button b.addActionListener(javaornekleri); // create a object of JTextField with 16 columns t = new JTextField(16); // create a panel to add buttons and textfield JPanel p = new JPanel(); // add buttons and textfield to panel p.add(t); p.add(b); p.add(l); // add panel to frame f.add(p); // set the size of frame f.setSize(300, 300); f.show(); } @Override public void actionPerformed(ActionEvent e) { String s = e.getActionCommand(); if (s.equals("Kaydet")) { // set the text of the label to the text of the field l.setText(t.getText()); // set the text of field to blank t.setText(" "); } } } |
Java JTextField ile ActionListener ve KeyListener Kullanımı
TextField nesnesine olay atamak için ActionListener metodunu kullanabilirsiniz. Aşağıdaki örnek ile TextField ile ActionListener nasıl kullanacağınız göreceksiniz.
Kodun ikinci bölümünde ise KeyListener ile ilgili tuşa basma, bırakma ve veri girişi ile ilgili tüm işlemler yapılmıştır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
import javax.swing.*; import java.awt.event.*; public class Main { public static void main(String[] args) { JFrame f = new JFrame(); JTextField textField = new JTextField(); textField.setBounds(80, 150, 250, 40); textField.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e){ System.out.println("Enter Tuşuna Basıldı!"); } }); textField.addKeyListener( new KeyListener() { public void keyPressed(KeyEvent keyEvent) { int keyCode = keyEvent.getKeyCode(); String keyText = KeyEvent.getKeyText(keyCode); System.out.println("BASILDI" + " : " + keyText + " / " + keyEvent.getKeyChar()); } public void keyReleased(KeyEvent keyEvent) { int keyCode = keyEvent.getKeyCode(); String keyText = KeyEvent.getKeyText(keyCode); System.out.println("BIRAKILDI" + " : " + keyText + " / " + keyEvent.getKeyChar()); } public void keyTyped(KeyEvent keyEvent) { int keyCode = keyEvent.getKeyCode(); String keyText = KeyEvent.getKeyText(keyCode); System.out.println("GİRŞ YAPILDI" + " : " + keyText + " / " + keyEvent.getKeyChar()); } }); f.add(textField); f.setSize(400, 500); f.setLayout(null); f.setVisible(true); } } |
2 Yorum