Announcement

Collapse
No announcement yet.

JTextField kontrollieren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • JTextField kontrollieren

    Hallo

    Wie kann man am einfachsten eingabe in jTextField kontrollieren.
    Ich will das alles kontrollieren:
    -darf nicht leer sein
    -eintrag eksistiert nocht nicht in DB

    Wenn diese zwei Bedingungen erfüllt sind kann man weiter zum neksten JTextField.

    Jetz mach ich es so, das ich das alles beim FocusLost kontrolliere.

    Wie kann ich es besser machen?

    Danke

  • #2
    Was sollte verbessert werden?
    FocusLost ist der frühestmögliche Zeitpunkt.
    Christian

    Comment


    • #3
      Ich kontrolliere beide Bedingungen mit IF

      Der problem ist bei vielen JTextField-s

      Ich verliere den Durchblick :S

      Comment


      • #4
        Wenn alle Textfelder die gleichen Bedingungen erfüllen müssen, ist allen Textfeldern der gleiche Focus-Listener zuzuordnen.
        Über das Focus-Event
        http://download.oracle.com/javase/7/...ocusEvent.html

        kann dann mit getComponent das Textfield ermittelt werden, welches das Ereignis ausgelöst hat
        Christian

        Comment


        • #5
          Noch ein Beispiel

          [highlight=java]
          import java.awt.Dimension;
          import java.awt.event.FocusAdapter;
          import java.awt.event.FocusEvent;
          import javax.swing.JButton;
          import javax.swing.JTextField;
          import javax.swing.WindowConstants;

          public class NewJDialog extends javax.swing.JDialog {
          private JButton jButton1;
          private JTextField textField1;
          private JTextField textField2;

          public NewJDialog(java.awt.Frame parent, boolean modal) {
          super(parent, modal);
          initComponents();
          setSize(new Dimension(200, 200));
          }


          private void initComponents() {

          textField1 = new JTextField();
          textField2 = new JTextField();
          jButton1 = new JButton();

          setDefaultCloseOperation(WindowConstants.DISPOSE_O N_CLOSE);
          getContentPane().setLayout(null);

          textField1.setText("Ich bin Textfeld 1");
          textField1.setName("Text1"); // NOI18N
          textField1.addFocusListener(new FocusAdapter() {
          public void focusLost(FocusEvent evt) {
          textFieldFocusLost(evt);
          }
          });
          getContentPane().add(textField1);
          textField1.setBounds(10, 10, 130, 20);

          textField2.setText("Ich bin Textfeld 2");
          textField2.setName("Text2"); // NOI18N
          textField2.addFocusListener(new FocusAdapter() {
          public void focusLost(FocusEvent evt) {
          textFieldFocusLost(evt);
          }
          });
          getContentPane().add(textField2);
          textField2.setBounds(10, 40, 130, 20);

          jButton1.setText("jButton1");
          getContentPane().add(jButton1);
          jButton1.setBounds(40, 80, 73, 23);

          pack();
          }

          private void textFieldFocusLost(FocusEvent evt) {
          JTextField aktTextField=(JTextField)evt.getComponent();
          System.out.println(aktTextField.getName());
          System.out.println(aktTextField.getText());
          }


          public static void main(String args[]) {
          java.awt.EventQueue.invokeLater(new Runnable() {

          public void run() {
          NewJDialog dialog = new NewJDialog(new javax.swing.JFrame(), true);
          dialog.addWindowListener(new java.awt.event.WindowAdapter() {

          public void windowClosing(java.awt.event.WindowEvent e) {
          System.exit(0);
          }
          });
          dialog.setVisible(true);
          }
          });
          }



          }

          [/highlight]
          Christian

          Comment


          • #6
            Vielen Dank Christian.

            Das Beispiel hat mier geholfen. )))

            Comment

            Working...
            X