Hallo liebe JavaFans
das ist mein erster Post hier im Forum und freue mich euch kennenzulernen und natürlich auch auf eure Hilfe.
Seit ca. Monate bringe ich mir Schritt für Schritt das Java-programmieren bei.
Ich programiere am Anfang kleine dinge, um auch mal Erfolg zu haben und das Erlernte anzuwenden.
( Ich programmiere mit NetBeans 6.8 )
Ich habe hier ein JForm mit einem Label.
Grundsätzlich weiß ich wie ich das Label verändern kann ( mit Buttons ) etc. zu jLabel2.setText.
Mein Vorhaben:
in einem Fenster steht Holz = 10 jLabel2 ( "Holz" und "10" sind 2 verschiedene Labels )
Der Wert "10" wird alle 5 Sekunden um 5 erhöht, dazu habe ich TimerTask benutzt und zwei Klassen geschrieben die das bewerkstelligen.
Auf jedenfall habe ich das gefühl das die Klassen nicht ausgeführt werden, obwohl der Wert "10" aber aus der Klasse herausgelesen wird.
Hier mein Script:
jLabel ausschnitt:
Meine Problemzone Zeile 73 - 84
Klasse1 Name (timerEngine)
Hier wird Holz um 5 erhöht.
Klasse2 Name ( TimerCfg )
Hier wird die Klasse timerEngine alle 5 Sekunden ausgeführt
vielen Dank für eure Unterstützung
oomworld
das ist mein erster Post hier im Forum und freue mich euch kennenzulernen und natürlich auch auf eure Hilfe.
Seit ca. Monate bringe ich mir Schritt für Schritt das Java-programmieren bei.
Ich programiere am Anfang kleine dinge, um auch mal Erfolg zu haben und das Erlernte anzuwenden.
( Ich programmiere mit NetBeans 6.8 )
Ich habe hier ein JForm mit einem Label.
Grundsätzlich weiß ich wie ich das Label verändern kann ( mit Buttons ) etc. zu jLabel2.setText.
Mein Vorhaben:
in einem Fenster steht Holz = 10 jLabel2 ( "Holz" und "10" sind 2 verschiedene Labels )
Der Wert "10" wird alle 5 Sekunden um 5 erhöht, dazu habe ich TimerTask benutzt und zwei Klassen geschrieben die das bewerkstelligen.
Auf jedenfall habe ich das gefühl das die Klassen nicht ausgeführt werden, obwohl der Wert "10" aber aus der Klasse herausgelesen wird.
Hier mein Script:
jLabel ausschnitt:
Meine Problemzone Zeile 73 - 84
Java:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* gamexEngine.java
*
* Created on 07.01.2010, 16:09:29
*/
package gamex;
import java.util.*;
/**
*
* @author oOm
*/
public class gamexEngine extends javax.swing.JFrame {
/** Creates new form gamexEngine */
public gamexEngine() {
initComponents();
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jLabel1.setText("Holz");
jLabel2.setText("jLabel2");
jLabel2.addPropertyChangeListener(new java.beans.PropertyChangeListener() {
public void propertyChange(java.beans.PropertyChangeEvent evt) {
jLabel2PropertyChange(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(172, 172, 172)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(jLabel1))
.addContainerGap(194, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(22, 22, 22)
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jLabel2)
.addContainerGap(30, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void jLabel2PropertyChange(java.beans.PropertyChangeEvent evt) {
timerEngine booM = new timerEngine();
int boomA = booM.holzA;
String wooD;
wooD =(new Integer(boomA).toString());
jLabel2.setText(wooD);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new gamexEngine().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
// End of variables declaration
}
Klasse1 Name (timerEngine)
Hier wird Holz um 5 erhöht.
Java:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package gamex;
import java.util.*;
/**
*
* @author oOm
*/
public class timerEngine extends TimerTask {
//Eigenschaften
int holzA = 10;
@Override public void run()
{
holzA = holzA + 5;
}
}
Klasse2 Name ( TimerCfg )
Hier wird die Klasse timerEngine alle 5 Sekunden ausgeführt
Java:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package gamex;
import java.util.*;
/**
*
* @author oOm
*/
public class timerCfg {
{
Timer timer = new Timer();
// Start in 2 Sekunden und läuft alle 5 Sekunden
timer.schedule( new timerEngine(), 2000, 5000 );
}
}
vielen Dank für eure Unterstützung
oomworld