Hallo erstmal,
Ich bin noch sehr neu in Java und wir haben in der Uni erst grundkenntnisse erworben.
Dennoch probiere ich gerade herum mir ein eigenes graphisches UI zu basteln, das mir (für ein Spiel)
je nach gedrückten Buttons variablen definiert und dann mit "berechne" diese variablen nach einer Formel berechnet.
Ich habe mir den unten gezeigten code weitestgehend zusammenkopiert und noch nicht 100% verstanden was alle Befehle bedeuten, daher konnte ich mir durch die Suchfkt. auch keine Ergebnisse erarbeiten, weil ich nicht weiss wie der ganze Kram heisst...
naja, jedenfalls wäre es super, wenn mir jemand sagen könnte wo (oder besser gesagt wie, denn ich habe alle "Bereiche" probiert) ich die Variablen initialisieren muss,
damit ich sie unten bei den buttons verwenden kann und damit rechnen kann.
Also vereinfacht .:
int variablen x,y,z
button x1 gedrückt setzt x=1; btn 2 x=2; etc
btn y1 .. wie oben usw
und dann möchte ich durch "berechnen" zb x*y/z = ergebnis
auch wärs nett wen nmir jemand sagen kann, warum einige bereiche mit private gekennzeichnet sind und was der this. befehl hier macht.
und kann es sein das der Code unnötig aufgeblasen is? Oder gut gecodet?
Übersichtlich isses ja aber irgendwie ist bissl was "doppelt"...
Vielen lieben Dank und ich hoffe ich verärgere keinen weil das zu trivial ist.
Ich bin noch sehr neu in Java und wir haben in der Uni erst grundkenntnisse erworben.
Dennoch probiere ich gerade herum mir ein eigenes graphisches UI zu basteln, das mir (für ein Spiel)
je nach gedrückten Buttons variablen definiert und dann mit "berechne" diese variablen nach einer Formel berechnet.
Ich habe mir den unten gezeigten code weitestgehend zusammenkopiert und noch nicht 100% verstanden was alle Befehle bedeuten, daher konnte ich mir durch die Suchfkt. auch keine Ergebnisse erarbeiten, weil ich nicht weiss wie der ganze Kram heisst...
naja, jedenfalls wäre es super, wenn mir jemand sagen könnte wo (oder besser gesagt wie, denn ich habe alle "Bereiche" probiert) ich die Variablen initialisieren muss,
damit ich sie unten bei den buttons verwenden kann und damit rechnen kann.
Also vereinfacht .:
int variablen x,y,z
button x1 gedrückt setzt x=1; btn 2 x=2; etc
btn y1 .. wie oben usw
und dann möchte ich durch "berechnen" zb x*y/z = ergebnis
auch wärs nett wen nmir jemand sagen kann, warum einige bereiche mit private gekennzeichnet sind und was der this. befehl hier macht.
und kann es sein das der Code unnötig aufgeblasen is? Oder gut gecodet?
Übersichtlich isses ja aber irgendwie ist bissl was "doppelt"...
Vielen lieben Dank und ich hoffe ich verärgere keinen weil das zu trivial ist.
Java:
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
class buttons extends JFrame implements ActionListener{
JButton btn1;
JButton btn2;
JButton btn3;
JButton berechne;
public buttons(){
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
makeButtons();
arrangeElements();
registerButtons();
}
private void makeButtons(){
btn1 = new JButton("button 1");
btn2 = new JButton("button 2");
btn3 = new JButton("button 3");
berechne = new JButton("Berechne");
}
private void arrangeElements(){
this.setLayout(null);
btn1.setSize(100,100);
btn1.setLocation(0,0);
btn2.setSize(100,100);
btn2.setLocation(100,0);
berechne.setSize(100,100);
berechne.setLocation(100,200);
this.getContentPane().add(btn1);
this.getContentPane().add(btn2);
this.getContentPane().add(btn3);
this.getContentPane().add(berechne);
}
private void registerButtons(){
btn1.addActionListener(this);
btn2.addActionListener(this);
btn3.addActionListener(this);
berechne.addActionListener(this);
}
public static void main(String[] args){
buttons app = new buttons();
app.setSize(1000,1000);
app.setVisible(true);
}
public void actionPerformed(ActionEvent ev){
if (ev.getSource() == btn1){
System.out.println("Button1 gedrueckt");
add = 1;
System.out.println("add = " + add);
}
if (ev.getSource() == btn2){
System.out.println("Button2 gedrueckt");
System.out.println("Ein Event ist aufgetreten");
}
if (ev.getSource() == berechne){
System.out.println("Berechne gedrueckt");
System.out.println("add = " + add);
}
}
}