Schönen guten Tag, mein Pseudonym ist _ShadowRaven_ (Ja, ich bestehe auf die Unterstriche) und ich habe ein/zwei Fragen.
Hier mein "Code":
[Java]
package main;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.*;
public class Main{
int intvar1=0,intvar2=0,intvar3=0 //hier geht es noch eine Weile weiter
JFrame mainframe = new mainframe("Frame1");
mainframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainframe.setLayout(new GridLayout(10,3));
mainframe.setSize(420,420);
JFrame anzeigeframe = new JFrame("Anzeige");
anzeigeframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
anzeigeframe.setSize(450,100);
JButton jbtn1 = new JButton();
jbtn1.setIcon(new ImageIcon("bilder/img1.png"));
jbtn1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent btn1prssd { intvar1=intvar1+1 } });
JButton jbtn2 = new JButton();
jbtn2.setIcon(new ImageIcon("bilder/img2.png"));
jbtn2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent btn2prssd { intvar2=intvar2+1 } });
//Hier werden weitere JButtons definiert, alle nach dem selben Muster
mainframe.add(jbtn1);
mainframe.add(jbtn2);
//Hier werden die JButtons hinzugefügt
String intvar1_2=intvar1+("x intvar1")
String intvar2_2=invtar2+("x intvar2")
//usw.
int gesamt= intvar1+intvar2//und so weiter
System.out.println("Pro Typ: "+intvar1_2+"\n"+intvar2_2+"\n"//usw)
System.out.println("Gesamt: "+gesamt)
[/Java]
Bitte nicht lachen, ich bin ein Einsteiger und habe Probleme mit den Methoden
Das Programm soll folgende Aufgabe erledigen:
Beim Druck auf den Button soll eine dazu abgestimmte Variable um eins erhöht werden.
Ich habe einen großen Teil schon fertig, GUI angepasst und alles, doch mein Problem ist:
a) Wie schaffe ich es, dass die Variable intvar1 beim Druck auf den Button um 1 erhöht wird ?
Wenn ich die Variable außerhalb des ActionListeners definiere, wird sie innerhalb nicht erkannt und anders herum. Google hat gesagt, dass ich public static versuchen soll, allerdings meint eclipse dazu, dass die Modifier nicht passen:
Ich würde mich sehr über eine Antwort freuen
Liebe Grüße
Hier mein "Code":
[Java]
package main;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.*;
public class Main{
int intvar1=0,intvar2=0,intvar3=0 //hier geht es noch eine Weile weiter
JFrame mainframe = new mainframe("Frame1");
mainframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainframe.setLayout(new GridLayout(10,3));
mainframe.setSize(420,420);
JFrame anzeigeframe = new JFrame("Anzeige");
anzeigeframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
anzeigeframe.setSize(450,100);
JButton jbtn1 = new JButton();
jbtn1.setIcon(new ImageIcon("bilder/img1.png"));
jbtn1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent btn1prssd { intvar1=intvar1+1 } });
JButton jbtn2 = new JButton();
jbtn2.setIcon(new ImageIcon("bilder/img2.png"));
jbtn2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent btn2prssd { intvar2=intvar2+1 } });
//Hier werden weitere JButtons definiert, alle nach dem selben Muster
mainframe.add(jbtn1);
mainframe.add(jbtn2);
//Hier werden die JButtons hinzugefügt
String intvar1_2=intvar1+("x intvar1")
String intvar2_2=invtar2+("x intvar2")
//usw.
int gesamt= intvar1+intvar2//und so weiter
System.out.println("Pro Typ: "+intvar1_2+"\n"+intvar2_2+"\n"//usw)
System.out.println("Gesamt: "+gesamt)
[/Java]
Bitte nicht lachen, ich bin ein Einsteiger und habe Probleme mit den Methoden
Das Programm soll folgende Aufgabe erledigen:
Beim Druck auf den Button soll eine dazu abgestimmte Variable um eins erhöht werden.
Ich habe einen großen Teil schon fertig, GUI angepasst und alles, doch mein Problem ist:
a) Wie schaffe ich es, dass die Variable intvar1 beim Druck auf den Button um 1 erhöht wird ?
Wenn ich die Variable außerhalb des ActionListeners definiere, wird sie innerhalb nicht erkannt und anders herum. Google hat gesagt, dass ich public static versuchen soll, allerdings meint eclipse dazu, dass die Modifier nicht passen:
EclipseSDK hat gesagt.:Illegal modifier for parameter intvar1; only final is permitted
Ich würde mich sehr über eine Antwort freuen
Liebe Grüße