Wprowadzenie do JTextField w Javie

Kiedy mówimy o języku programowania Java, są z nim powiązane dwa segmenty, jeden to Core Java, a drugi to Advanced Java. Funkcje takie jak koncepcje OOP, takie jak polimorfizm, abstrakcja, enkapsulacja itp. Oraz inne funkcje, takie jak obsługa wyjątków, kolekcje, aplety itp. Są powiązane z Core Java, podczas gdy funkcje takie jak Swing, Hibernacja, Struts itp. Tworzą komponent Advanced Java. JTextField to także funkcja Java Swing, która umożliwia edycję tekstu w jednym wierszu. Głównym celem jest utrzymanie jego stabilności i kompatybilności bez zmian z java.awt.TextField i stanowi integralną część pakietu javax.swing. Dziedziczy klasę JTextComponent i korzysta z interfejsu SwingConstant.

Przeanalizujmy trochę różne konstruktory obecne w JTextField:

Konstruktory należące do tej klasy to:

  1. JTextField (): Są to konstruktory odpowiedzialne za utworzenie nowego TextField.
  2. JTextField (int kolumny): Jak sugeruje nazwa, kolumny parametrów służą do reprezentowania numerów kolumn w nowym pustym polu TextField.
  3. JTextField (Tekst ciągu): Tekst ciągu parametru służy do reprezentowania zainicjowanego podanego ciągu z nowym pustym polem tekstowym.
  4. JTextField (tekst ciągu, kolumny int): Jest to konstruktor używany do utworzenia pustego pola tekstowego z podanym ciągiem znaków wraz z określoną liczbą kolumn.
  5. JTextField (Dokument dokumentu, Tekst ciągu, kolumny int): Służy do korzystania z danego modelu pamięci wraz z określoną liczbą kolumn.

Metody JTextField

Przeczytajmy teraz o niektórych głównych metodach JTextField w Javie.

  1. setColumns (int n): Jak sama nazwa wskazuje, ta metoda służy do ustawienia określonej liczby kolumn w polu tekstowym.
  2. setFont (czcionka f): Ta funkcja służy do wyświetlania i ustawiania czcionki wyświetlanego pola tekstowego.
  3. addActionListener (ActionListener I): ta metoda służy do ustawienia detektora akcji w polu tekstowym.
  4. Int getColumns (): Ta metoda służy do uzyskania numerów kolumn w polu tekstowym.

Korzystanie z pól tekstowych

Głównym celem pola tekstowego jest ustawienie podstawowego poziomu kontroli tekstu, za pomocą którego użytkownik może wprowadzić małą wartość tekstową. Ilekroć użytkownik potwierdzi wpisanie tekstu, co zwykle odbywa się poprzez naciśnięcie klawisza Enter, pole tekstowe jest wyświetlane jako uruchamiające zdarzenie akcji. Jeśli wymagane jest uzyskanie wielu wierszy danych wejściowych od użytkownika, zaleca się skorzystanie z pola tekstowego.

Zobaczmy kod do podstawowego tworzenia pola tekstowego i jego użycia.

public class TDemo extends JPanel implements ActionListener (
public JtField tField;
public JtArea tArea;
public TDemo() (
super(new Layout());
tField = new JtField(20);
tField.addActionListener(this);
tArea = new JtArea(5, 20);
tArea.setEditable(false);
JScrollPane scrollPane = new JScrollPane(tArea);
Constraints c = new Constraints();
c.gridwidth = Constraints.REMAINDER;
c.fill = Constraints.HORIZONTAL;
add(tField, c);
c.fill = Constraints.BOTH;
c.wx = 1.0;
c.wy = 1.0;
add(scrollPane, c);
)
public void act(ActionEvent evt) (
String txt = tField.getText();
tArea.append(txt);
tField.selectAll();
tArea.setCaretPosition(tArea.getDocument().getLength());
)
private static void GUI() (
JFrame frame = new JFrame("TDemo");
frame.add(new TDemo());
frame.pack();
frame.setVisible(true);
)
public static void main(String() args) throws IOException(
javax.swing.SwingUtilities.invokeLater(new Runnable() (
public void run() (
GUI();
)
));
)
)

Swing API korzysta z kilku klas, które zawierają pola tekstowe lub są odmianami pól tekstowych.

  1. JFormattedTextField: podklasa JTextField, która daje uprawnienia do określania zestawu znaków prawnych, które mogą być wprowadzane przez użytkownika.
  2. JPasswordField: podklasa, która nie odnosi się do pokazywania znaków wpisanych przez użytkownika.
  3. JComboBox: To pole można edytować, a także zapewnia menu różnych zestawów ciągów do wyboru.
  4. JSpinner: JSpinner służy do łączenia sformatowanego pola tekstowego z kilkoma małymi przyciskami, które pozwalają użytkownikowi wybierać spośród poprzedniej i następnej dostępnej wartości.

Przykłady JTextField w Javie

Przyjrzyjmy się teraz niektórym przykładom

Przykład 1

import javax.swing.*;
import java.awt.event.*;
class Jteobjxt exteobjnds JFrame implements ActionListeobjner (
static JLabel l;
static JButton b;
static JFrame f;
static JTField t;
// creating default constructor for Jteobjxt example
Jteobjxt()
(
)
// public static void main class
public static void main(String() args)
(
// new frame creation
f = new JFrame("JTField");
// new label creation
l = new JLabel("");
// new button creation
b = new JButton("submit button createobjd");
// new object creation
Jteobjxt teobj = new Jteobjxt();
// adding addActionListeobjner to my created button
b.addActionListeobjner(teobj);
// creating a column of 16 numbers
t = new JTField(16);
// panel creation
JPanel p = new JPanel();
// adding Jtextfield and buttons to panel
p.add(t);
p.add(b);
p.add(l);
// adding panel to frame created
f.add(p);
// setting the size of frame created earlier
f.setSize(300, 300);
f.show();
)
// checking whether the button is pressed or not
public actionPerformed(ActionEvent e)
(String s1 = e.getActionCommand();
if (s1.equalsIgnoreCase("submit")) (
l.setJteobjxt(t.getJteobjxt());
// set the field object as the blank value
t.setJteobjxt(" ");
)
)
)

Wynik:

Przykład nr 2

import javax.swing.*;
import java.io.*;
class TextEg
(
public static void main(String args()) throws IOException
(
JFrame f= new JFrame("Example of TextField ");
//variable declaration
JTextField t12, t22;
t12=new JTextField("Welcome!");
t12.setBounds(10, 100, 100, 30);
//declaring new example
t22=new JTextField("new example");
//setting bounds
t22.setBounds(10, 150, 100, 30);
//adding into frames
f.add(t12); f.add(t22);
f.setSize(200, 200);
f.setVisible(true);
)
)

Wynik:

Przykład nr 3

import javax.swing.*;
import java.io.*;
import java.awt.event.*;
public class Teg implements ActionListener(
JTextField tf12, tf22, tf32;
JButton b12, b22;
Teg()(
JFrame f2= new JFrame();
tf12=new JTextField();
tf12.setBounds(10, 50, 100, 20);
tf22=new JTextField();
tf22.setBounds(10, 50, 100, 20);
tf32=new JTextField();
tf32.setBounds(10, 50, 100, 20);
//setting the setEditable as False
tf32.setEditable(false);
//addition operator
b12=new JButton("+");
b12.setBounds(10, 50, 100, 20);
//subtraction operator
b22=new JButton("-");
b22.setBounds(10, 50, 100, 20);
//this is used to refer to the current value
b12.addActionListener(this);
b22.addActionListener(this);
//addition into all frames
f2.add(tf12);f2.add(tf22);f2.add(tf32);f2.add(b12);f2.add(b22);
f2.setSize(100, 200);
//setting layout (default) to null
f2.setLayout(null);
f2.setVisible(true);
)
public void actionPerformed(ActionEvent e) (
String s12=tf12.getText();
String s22=tf22.getText();
int a2=Integer.parseInt(s12);
int b2=Integer.parseInt(s22);
int c2=0;
//conditional statement start
if(e.getSource()==b12)(
c2=a2+b2; //addition
)else if(e.getSource()==b22)(
c2=a2-b2; //subtraction
)
//printing final result
String res=String.valueOf(c2);
tf32.setText(res);
)
public static void main(String() args) (
new Teg();
) )

Wynik:

Polecane artykuły

Jest to przewodnik po JTextField w Javie. Tutaj omawiamy metody i przykłady JTextField w Javie z danymi wyjściowymi, a także użycie TextFields. Możesz także zapoznać się z następującymi artykułami, aby dowiedzieć się więcej -

  1. Zmienne w Javie
  2. Dostęp do modyfikatorów w Javie
  3. Instrukcja Case w Javie
  4. Pakiety Java
  5. Jak utworzyć panel w Javie?
  6. Przegląd JScrollPane w Javie
  7. Dostęp do modyfikatorów w PHP
  8. Polimorfizm w Javie
  9. JLabel w Javie
  10. Hibernacja mapowania | Typy w pliku XML
  11. Aplety w Javie | Działanie apletów Java