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.
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
16. december 2003 - 11:06
#1
Du tilføjer en actionListener til knappen og mitTextField.setText(Whatever);
16. december 2003 - 11:09
#2
kan du lave et eks?
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; }
16. december 2003 - 11:22
#4
det skal være ved tryk på ENTER knappen....
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
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; }
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..
22. december 2003 - 10:20
#8
Virker det hos dig ???
19. januar 2004 - 19:41
#9
Er det ved at være tid til at lukke spørgsmålet?
Kurser inden for grundlæggende programmering