ERLEDIGT
NEIN
NEIN
ANTWORTEN
2
2
ZUGRIFFE
458
458
EMPFEHLEN
-
Hallo,
ich habe in einer Klasse eine KeyListener eingebaut, leider funktioniert diese nicht und ich finde nciht den Fehler.
Ich hoffe, es kann mir jemand helfen.
Vielen Dank
Code java: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 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218
package view; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import javax.swing.*; import model.BerechneDaten; import view.Statusbar; public class BerechnungView extends JPanel implements KeyListener{ static final String NEWLINE = "\n"; public BerechnungView(){ super(); init(); addKeyListener(this); } JTextField tf = new JTextField("5"); JTextField tf1 = new JTextField("10"); JTextField tf2 = new JTextField("100"); JTextField tf3 = new JTextField("55"); JTextField tf4 = new JTextField("30"); JTextField tf5= new JTextField("100"); BerechneDaten gBD = new BerechneDaten(); private void init(){ setLayout(null); JLabel jl = new JLabel("Variable Daten zur Berechnung"); jl.setBounds(10, 215, 250, 30); jl.setFont(new Font("SansSerif",Font.BOLD,17)); add(jl); /*------------ Ende Überschrift -----------------*/ JLabel jl1 = new JLabel("Anzahl Beteiligter"); jl1.setBounds(40,250, 150, 30); add(jl1); //String daten = ""; //gBD.getDaten(daten); tf.setBounds(160, 255, 120, 20); add(tf); /*------------ Ende 1. Datenreihe Links -----------------*/ JLabel jl2 = new JLabel("Anzahl Touren"); jl2.setBounds(40, 272, 150, 30); add(jl2); tf1.setBounds(160, 277, 120, 20); add(tf1); /*------------ Ende 2.Datenreihe Links-----------------*/ JLabel jl3 = new JLabel("Anzahl Objekte"); jl3.setBounds(40, 294, 150, 30); add(jl3); tf2.setBounds(160, 299, 120, 20); add(tf2); /*------------ Ende 2.Datenreihe Links-----------------*/ JLabel jl4 = new JLabel("Gutachter"); jl4.setBounds(330, 250, 100, 30); add(jl4); tf3.setBounds(400, 255, 50, 20); add(tf3); /*------------------ Ende 1. Datenreihe Rechts -------------------*/ JLabel jl5 = new JLabel("Assistenz"); jl5.setBounds(330, 272, 100, 30); add(jl5); tf4.setBounds(400, 277, 50, 20); add(tf4); /*------------------ Ende 2. Datenreihe Rechts -------------------*/ JLabel jl6 = new JLabel("Beteiligter"); jl6.setBounds(330, 294, 100, 30); add(jl6); tf5.setBounds(400, 299, 50, 20); add(tf5); /*------------------ Ende 3. Datenreihe Rechts -------------------*/ JButton jb = new JButton("Berechnen"); jb.setMargin(new Insets(2,2,2,2)); jb.setFont(new Font("Arial",Font.BOLD,12)); jb.setBounds(490, 339, 80, 30); jb.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub buttonKlick(); getBerechnung(); } }); jb.addKeyListener(this); add(jb); JSeparator js = new JSeparator(); js.setBounds(10,195,610,1); add(js); JSeparator jsv = new JSeparator(SwingConstants.VERTICAL); jsv.setBounds(300, 10, 1, 180); add(jsv); JLabel jl7 = new JLabel("Ergebnisse der Berechnung"); jl7.setBounds(320, 5, 250, 30); jl7.setFont(new Font("SansSerif",Font.BOLD,14)); add(jl7); Statusbar st = new Statusbar(); setBounds(0, 400, 630, 21); add(st); JLabel bild = new JLabel(); bild.setIcon(new ImageIcon(getClass().getResource("../image/logo-pkr.jpg"))); bild.setBounds(10, 10, 300,180); add(bild); int y = 255; for(int i = 0; i< 2; i++){ JLabel preis = new JLabel(" € pro Stunde"); preis.setBounds(455, y, 100, 20); add(preis); y = y +22; } JLabel preis3 = new JLabel(" € pro Objekt"); preis3.setBounds(455, 299, 100, 20); add(preis3); } public void getBerechnung(){ JLabel label = new JLabel("Kosten ohne DEL: "); label.setBounds(320, 40, 150, 20); add(label); JLabel label2 = new JLabel(gBD.rechneGesamtOhneDEL() + " €"); label2.setBounds(470,40,150,20); add(label2); JLabel label1 = new JLabel("Kosten mit DEL: "); label1.setBounds(320,60, 150, 20); add(label1); JLabel label3 = new JLabel(gBD.rechneGesamtMitDEL() + " €"); label3.setBounds(470,60,150,20); add(label3); repaint(); } public void buttonKlick(){ //Hole Zahlen aus Textfeldern // Daten des Beteiligten double aBTf = 0; // Daten der Touren double aTTf = 0; // Daten der Objekte double aOTf = 0; // Preis des Gutachters double pGTf = 0; // Preis des Assitenten double pATf = 0; // Preis des Beteiligten double pBTf = 0; aBTf = Double.parseDouble(tf.getText()); aTTf = Double.parseDouble(tf1.getText()); aOTf = Double.parseDouble(tf2.getText()); pGTf = Double.parseDouble(tf3.getText()); pATf = Double.parseDouble(tf4.getText()); pBTf = Double.parseDouble(tf5.getText()); gBD.setDaten(aBTf); gBD.setDaten(aTTf); gBD.setDaten(aOTf); gBD.setDaten(pGTf); gBD.setDaten(pATf); gBD.setDaten(pBTf); } @Override public void keyPressed(KeyEvent e) { // TODO Auto-generated method stub } @Override public void keyReleased(KeyEvent e) { // TODO Auto-generated method stub } @Override public void keyTyped(KeyEvent e) { // TODO Auto-generated method stub if(e.getKeyCode() == KeyEvent.VK_ENTER){ buttonKlick(); } } }
-
Code java:
1 2
jb.addKeyListener(this); add(jb);
Du addest den KeyListener einem Button zu ?!
//EDIT Ah ne tut mir leid hab nicht genau geschaut entschuldigung
Würd ich nicht machen aber ich test es mal
Versuch mal den KeyListener der Frame zuzuordnen in der du das Panel einbindestGeändert von Leroux (03.09.08 um 13:56 Uhr)
-
Da du ein Enter abfragen willst, kannst du auch einfach einen Actionlistener verwenden und an den Textfeldern registirieren. (praktischerweise der gleiche wie der vom Button).
There are 10 kind of people, those who understand binary and those who don't.
Ähnliche Themen
-
KeyListener reagiert teils nicht auf die Leertaste
Von mr12345 im Forum Java GrundlagenAntworten: 6Letzter Beitrag: 20.07.10, 09:42 -
Mein Keylistener funktioniert nicht
Von DarkBioHazard im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 8Letzter Beitrag: 11.05.10, 23:34 -
li Listen Problem IE reagiert nicht FF reagiert
Von AdamRiese$ im Forum CSSAntworten: 8Letzter Beitrag: 16.09.08, 12:50 -
KeyListener reagiert nicht
Von Isolated im Forum JavaAntworten: 9Letzter Beitrag: 08.03.07, 21:24 -
KeyListener funktioniert auf Os X nicht
Von vaporizer im Forum JavaAntworten: 2Letzter Beitrag: 16.06.04, 01:24





Zitieren
Login





