Hallo,
ich bin mir nicht ganz so sicher ob die Frage hier im Forum vielleicht schon gelöst wurde, da ich nicht so genau weiß wonach ich suchen soll. Ich habe nun das Problem das ich gerne eine Kombination aus Stop, Countdown und "normalen" Uhr schreiben würde.
Ich habe nun die Oberfläche inklusive eines Kontextmenüs soweit zusammen. Mein Problem ist nun das ich gerne bei der Auswahl eines Menüpunktes aus dem Kontextmenüs in eine andere Klasse bzw. andere Methode verzweigen möchte. Wenn ich jetzt allerdings versuche mit this die gesamte Oberfläche (und somit auch das Label) aus dem Menüpunkt zu übergeben, mault der Compiler das die Klasse nicht verfügbar ist.
Mein Quellcode schaut momentan so aus:
Ich bin momentan leider ziemlich ratlos, wie ich jetzt aus der anderen Klasse heraus auf das Label zugreifen kann, und ich wäre über einen Tipp sehr dankbar.
Gruß
Dan
ich bin mir nicht ganz so sicher ob die Frage hier im Forum vielleicht schon gelöst wurde, da ich nicht so genau weiß wonach ich suchen soll. Ich habe nun das Problem das ich gerne eine Kombination aus Stop, Countdown und "normalen" Uhr schreiben würde.
Ich habe nun die Oberfläche inklusive eines Kontextmenüs soweit zusammen. Mein Problem ist nun das ich gerne bei der Auswahl eines Menüpunktes aus dem Kontextmenüs in eine andere Klasse bzw. andere Methode verzweigen möchte. Wenn ich jetzt allerdings versuche mit this die gesamte Oberfläche (und somit auch das Label) aus dem Menüpunkt zu übergeben, mault der Compiler das die Klasse nicht verfügbar ist.
Mein Quellcode schaut momentan so aus:
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Oberflaeche
extends JFrame
implements WindowListener
{
JLabel LZeit=new JLabel(); // Label für die Zeit
Uhrzeit u1=new Uhrzeit(); // Objekt für die Uhrzeit
Stopuhr s1=new Stopuhr(); // Objekt für die Stopuhr
JPopupMenu popupmenue; // Definition eines Popup-Menüs
Oberflaeche()
{
// Ausgabe der Fensterüberschrift
super("Uhr");
addWindowListener(this); // Hinzufügen der WindowListener
// Füllen des Popup-Menüs
popupmenue=new JPopupMenu("Menue");
// Definition des Kontextmenüpunktes zum Aufruf der Stopuhr
popupmenue.add(new AbstractAction ("Stopuhr")
{
public void actionPerformed(ActionEvent e)
{
// Hier würde ich gerne die Oberfläche an die andere Klasse übergeben
// Reset der Stopuhr
s1.reset(this);
}
});
Container contentPane = getContentPane();
contentPane.add(LZeit);
// Definition der Funktionen für den Mouselistener
LZeit.addMouseListener(new MouseAdapter()
{
// Abfrage ob die Maustaste gedrückt wurde
public void mousePressed(MouseEvent e)
{
if(e.isPopupTrigger())
popupmenue.show(e.getComponent(), e.getX(), e.getY());
}
// Abfrage ob die Maustaste losgelassen wurde
public void mouseReleased(MouseEvent e)
{
if(e.isPopupTrigger())
popupmenue.show(e.getComponent(), e.getX(), e.getY());
}
});
// Starten der Uhr
u1.Starten(this);
}
public void windowOpened(WindowEvent e) {}
}
Ich bin momentan leider ziemlich ratlos, wie ich jetzt aus der anderen Klasse heraus auf das Label zugreifen kann, und ich wäre über einen Tipp sehr dankbar.
Gruß
Dan