Avatar billede jakob_b_b Nybegynder
16. december 2003 - 10:54 Der er 9 kommentarer

java og enter knappen

Har et JTextField hvor jeg indtaster nogle tal. Jeg vil gerne have lavet således, så ved tryk på enter knappen bliver en funktion eksekveret som gemmer værdien i JTextField.
Avatar billede _carsten Nybegynder
16. december 2003 - 11:06 #1
Du tilføjer en actionListener til knappen og mitTextField.setText(Whatever);
Avatar billede jakob_b_b Nybegynder
16. december 2003 - 11:09 #2
kan du lave et eks?
Avatar billede _carsten Nybegynder
16. december 2003 - 11:14 #3
Kommer her


public class JFrame_1 extends javax.swing.JFrame {

    public JFrame_1() {
        initComponents();
    }

    private void initComponents() {
        jLabel1 = new javax.swing.JLabel();
        jTextField1 = new javax.swing.JTextField();
        jButton1 = new javax.swing.JButton();
        jTextField2 = new javax.swing.JTextField();

        getContentPane().setLayout(new java.awt.FlowLayout());

        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowClosing(java.awt.event.WindowEvent evt) {
                exitForm(evt);
            }
        });

        jLabel1.setText("Skriv tekst i f\u00f8rste felt");
        getContentPane().add(jLabel1);

        jTextField1.setColumns(10);
        getContentPane().add(jTextField1);

        jButton1.setText("Tryk");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                kopierTekst(evt);
            }
        });

        getContentPane().add(jButton1);

        jTextField2.setColumns(10);
        getContentPane().add(jTextField2);

        pack();
    }

    private void kopierTekst(java.awt.event.ActionEvent evt) {
        jTextField2.setText(jTextField1.getText());
    }
   
    private void exitForm(java.awt.event.WindowEvent evt) {
        System.exit(0);
    }
   
    public static void main(String args[]) {
        new JFrame_1().show();
    }

    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTextField jTextField2;
}
Avatar billede jakob_b_b Nybegynder
16. december 2003 - 11:22 #4
det skal være ved tryk på ENTER knappen....
Avatar billede Slettet bruger
16. december 2003 - 11:32 #5
man kan
getContentPane().add(jTextField1);
getRootPane().setDefaultButton(jButton1) //Så er tryk på ENTER det samme som tryk på jButton1
Avatar billede _carsten Nybegynder
16. december 2003 - 11:33 #6
Sorry

public class JFrame_1 extends javax.swing.JFrame {
   
    public JFrame_1() {
        initComponents();
    }

    private void initComponents() {
        jLabel1 = new javax.swing.JLabel();
        jTextField1 = new javax.swing.JTextField();
        jTextField2 = new javax.swing.JTextField();

        getContentPane().setLayout(new java.awt.FlowLayout());

        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowClosing(java.awt.event.WindowEvent evt) {
                exitForm(evt);
            }
        });

        jLabel1.setText("Skriv tekst i f\u00f8rste felt og tryk ENTER");
        getContentPane().add(jLabel1);

        jTextField1.setColumns(10);
        jTextField1.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                df(evt);
            }
        });

        getContentPane().add(jTextField1);

        jTextField2.setColumns(10);
        getContentPane().add(jTextField2);

        pack();
    }

    private void df(java.awt.event.KeyEvent evt) {
        if(evt.getKeyCode() == evt.VK_ENTER)
            jTextField2.setText(jTextField1.getText());
    }
   
    private void exitForm(java.awt.event.WindowEvent evt) {
        System.exit(0);
    }

    public static void main(String args[]) {
        new JFrame_1().show();
    }
   
   
    // Variables declaration - do not modify
    private javax.swing.JLabel jLabel1;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTextField jTextField2;
}
Avatar billede labanos Nybegynder
17. december 2003 - 11:42 #7
JTextField input = new JTextField();
input.addActionListener(this);

public void actionPerformed(ActionEvent e) {
  if (e.getSource() == input) {
      gørNogetMedTekstInput(input.getText());
  }
}

selvfølgelig i en klasse hvor du implementere ActionListener interfacet og adder dit textField..
Avatar billede _carsten Nybegynder
22. december 2003 - 10:20 #8
Virker det hos dig ???
Avatar billede _carsten Nybegynder
19. januar 2004 - 19:41 #9
Er det ved at være tid til at lukke spørgsmålet?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester