Kalkulačka v Javě a problém Vyřešeno

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Uživatelský avatar
jackm
Level 4.5
Level 4.5
Příspěvky: 1720
Registrován: srpen 08
Pohlaví: Muž
Stav:
Offline
Kontakt:

Kalkulačka v Javě a problém

Příspěvekod jackm » 18 lis 2011 00:18

Ahoj,
učím se Javu a strávil jsem pár hodin na této kalkulačce, teď už si opravdu nevím rady.

Kód: Vybrat vše

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;
public class kalkulacka
{
JButton tlacitko;
JFrame frame;
JTextField pole1,pole2;
JComboBox combobox;
JLabel lbl;
JPanel panel;
  public static void main(String[] args)
  {
  new kalkulacka();
  }
  public kalkulacka()
  {
  frame = new JFrame("Titulek");
  Image obrazek = Toolkit.getDefaultToolkit().getImage("icon.gif");
  frame.setIconImage(obrazek);
  tlacitko = new JButton("Vypočti");
  tlacitko.addActionListener(new Klik());
  pole1 = new JTextField(5);
  String[] operace = {"+","-","*","/"};
  combobox = new JComboBox(operace);
  combobox.setSelectedIndex(0);
  pole2 = new JTextField(5);
  lbl = new JLabel("<html><font color='red'>label</font></html>");
  lbl.setVisible(true);
  //int cislo1 = Integer.parseInt(pole1.getText());
  //int cislo2 = Integer.parseInt(pole2.getText());
  panel = new JPanel();
  frame.setSize(350,350);
  frame.setVisible(true);
  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  panel.add(pole1);
  panel.add(combobox);
  panel.add(pole2);
  panel.add(tlacitko);
  panel.add(lbl);
  panel.setVisible(true);
  frame.add(panel);
  }
  public class Klik implements ActionListener
  {
     public void actionPerformed(ActionEvent e)
     {
     int aInt = Integer.parseInt(pole1.toString());
     int bInt = Integer.parseInt(pole2.toString());
     int cInt = Integer.parseInt(combobox.getSelectedItem().toString());
     int result = aInt+cInt+bInt;
     lbl.setText(Integer.toString(result));
     }   
  }
     
  }

Kompilátor nehlásí chyby, ale kalkulačka nefunguje a zároveň general output hlásí PŘI kliknutí na tlačítko Vypočti, čili bude chyba jen ve třídě Klik v převodu, výpočtu, či takovém něčem, vím, že tam je chyba, ale nevím jak na to:
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "javax.swing.JTextField[,29,8,59x20,layout=javax.swing.plaf.basic.BasicTextUI$UpdateHandler,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.BorderUIResource$CompoundBorderUIResource@964130,flags=296,maximumSize=,minimumSize=,preferredSize=,caretColor=sun.swing.PrintColorUIResource[r=51,g=51,b=51],disabledTextColor=javax.swing.plaf.ColorUIResource[r=184,g=207,b=229],editable=true,margin=javax.swing.plaf.InsetsUIResource[top=0,left=0,bottom=0,right=0],selectedTextColor=sun.swing.PrintColorUIResource[r=51,g=51,b=51],selectionColor=javax.swing.plaf.ColorUIResource[r=184,g=207,b=229],columns=5,columnWidth=11,command=,horizontalAlignment=LEADING]"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:492)
at java.lang.Integer.parseInt(Integer.java:527)
at kalkulacka$Klik.actionPerformed(kalkulacka.java:49)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6504)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6269)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4860)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4686)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2713)
at java.awt.Component.dispatchEvent(Component.java:4686)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:680)
at java.awt.EventQueue$4.run(EventQueue.java:678)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Reklama
Uživatelský avatar
jackm
Level 4.5
Level 4.5
Příspěvky: 1720
Registrován: srpen 08
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Kalkulačka v Javě a problém  Vyřešeno

Příspěvekod jackm » 18 lis 2011 17:15

Kamarád mi naštěstí pomohl :idea:
Třída Klik opravena:

Kód: Vybrat vše

public class Klik implements ActionListener
     {
        public void actionPerformed(ActionEvent e)
        {
      int c1 = Integer.parseInt(pole1.getText());
      int c2 = Integer.parseInt(pole2.getText());
      int znamenko = combobox.getSelectedIndex();
      int vysledek = 0;
      switch(znamenko)
      {
      case 0:vysledek = c1+c2;break;
      case 1:vysledek = c1-c2;break;
      case 2:vysledek = c1*c2;break;
      case 3:vysledek = c1/c2;break;
      }
        lbl.setText(Integer.toString(vysledek));
      }
     }   


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Problém s RAM
    od lukas222 » 04 lis 2024 13:52 » v Problémy s hardwarem
    4
    3384
    od lukas222 Zobrazit poslední příspěvek
    05 lis 2024 13:36
  • Problém s FPS
    od mcrakvar » 26 lis 2024 16:22 » v Vše ostatní (sw)
    4
    4017
    od petr22 Zobrazit poslední příspěvek
    28 lis 2024 10:06
  • Problém s fps spojený s gpu
    od Matyas.S » 02 pro 2024 20:30 » v Hry
    0
    2268
    od Matyas.S Zobrazit poslední příspěvek
    02 pro 2024 20:30
  • Problém s monitorom
    od sloliv » 08 led 2025 04:55 » v Problémy s hardwarem
    8
    2351
    od sloliv Zobrazit poslední příspěvek
    08 led 2025 22:03
  • Problém s internetem Příloha(y)
    od valama » 06 dub 2025 16:13 » v Internet a internetové prohlížeče
    11
    4779
    od RIKI22 Zobrazit poslední příspěvek
    06 dub 2025 20:42

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host