R
Rupert
Gast
Hallo, ich hoffe mir kann jemand weiterhelfen. Ich versuche, so ne kleine Popup-Uhr zu basteln, d.h. wenn man über das kleine Kästchen rechts oben "fährt", vergrößert sich dieses (JFrame) und man sollte das JLabel lesen können. Das funktioniert aber nicht, wieso? Habe alles Unwichtige auskommentiert, am besten code kurz compiliern & ausführen . Es geht nur darum, dass das JLabel in diesem JFrame nach dem Vergrößern dargestellt wird. Bitte keine alternativen Lösungsvorschläge, das muss doch eigentlich so gehen.
Danke
[/code]
Danke
Code:
// PopUpWatch.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class PopUpWatch extends JFrame {
private JLabel uhrzeit;
private JPopupMenu menü;
private JMenuItem mItem;
public PopUpWatch() {
Container cp = getContentPane();
cp.setLayout( new FlowLayout() );
setSize( 5, 5 );//kleines Kästchen...
setLocation( getToolkit().getScreenSize().width - getWidth(), 0 );//...rechts oben
setUndecorated( true );//kein Rand
uhrzeit = new JLabel("Uhrzeit ;)");
menü = new JPopupMenu();
/*mItem = new JMenuItem("beenden");*/
cp.add( uhrzeit );
/*cp.add( menü );*/
//menü.add( mItem ); //kommentiert, da sonst nicht funktioniert ??
addMouseListener( new MouseAdapter() {
public void mouseEntered( MouseEvent me ) {
System.out.println("mouse entered");
setSize( 150, 50 );//"richtige" Größe...
setLocation( getToolkit().getScreenSize().width - getWidth(), 0 );//...rechts oben
}
/*public void mouseExited( MouseEvent me ) {
System.out.println("mouse exited");
try{Thread.sleep( 1000 );}catch(Exception e){} // 1 sek. "verzögerung"
setSize( 5, 5 );//wieder kleines Kästchen...
setLocation( getToolkit().getScreenSize().width - getWidth(), 0 );//...rechts oben
}
public void mouseReleased( MouseEvent me ) {
menü.show (me.getComponent(), me.getX(), me.getY());//Menü wird aufge"poppt"
System.out.println("PopUpMenü wird geöffnet");
}*/
} );
}
public static void main( String args[] ) {
PopUpWatch puw = new PopUpWatch();
puw.setVisible( true );
}
}