tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
821
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Registriert seit
    Dec 2001
    Ort
    D
    Beiträge
    198
    Ich habe vor, mir einen eigenen sog.
    "Desktop Calendar" zu basteln, evtll. dann auch gleich mit JavaFX.

    Das Problem:

    Wie kriege ich Java-Komponenten (Swing oder halt gleich JavaFX-Zeug) direkt auf den Desktop "geklebt"?

    (erstmal ziemlich Windows-spezifisch)

    - die Anwendung hat nur ein Tray Icon, keinen Eintrag in der Taskleiste
    - die Anwendung ist immer die "unterste" unter allen anderen Fenstern, man sieht sie also wirklich nur, solange man etwas vom Desktop sieht


    ein Beispiel, wie sowas aussieht (benutze ich seit Jahren, unglaublich praktisch):

    http://tinnes.org.uk/desktopcalendar/about.htm


    Es gibt auch allerlei andere solche Kalender, u.a. für "Active Desktop" (das beschreibt auch so ziemlich das, was ich haben will).

    Ich wills halt nur selbst schreiben, in Java :P


    Ich habe ja schon ein wenig mit dem SystemTray rumgespielt, sobald ich z.B. ein JFrame mit setvisible(false) verstecke, verschwindet der Eintrag in der Taskleiste, das JFrame damit aber leider natürlich auch
    Und das mit dem "auf dem Desktop kleben" - da hab ich 0 Ideen.

    Veilleicht hat da jemand eine Idee, ob das überhaupt mit 1.6 funktioniert?
     

  2. #2
    Avatar von joschi70
    joschi70 joschi70 ist offline Mitglied Gold
    Registriert seit
    Sep 2008
    Beiträge
    143
    Hi,

    vielleicht hilfst Dir dieses Beispiel weiter:
    http://www.kodejava.org/examples/313.html

    Wenn Du jetzt noch JFrame durch JWindow ersetzt ist auch der Eintrag in der Taskleiste weg.

    Ab Java 6 Update 10 kannst Du auch die Form und die Tranparenz des Fensters ändern.

    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    
    // Transparenz
     window.getContentPane().setBackground(Color.BLUE);
      AWTUtilities.setWindowOpacity(window, Float.valueOf(0.25f));
            
    // Form
    Shape shape = null;
    shape = new float+java.sun.com&btnI=I%27m%20Feeling%20Lucky">Ellipse2D.Float(0, 0, window.getWidth(), window.getHeight());
    AWTUtilities.setWindowShape(window, shape);

    Näheres siehe hier: Setting-the-Shape-of-a-Window

    Gruß
    Joschi
    Geändert von joschi70 (02.07.09 um 14:00 Uhr)
     

  3. #3
    Registriert seit
    Dec 2001
    Ort
    D
    Beiträge
    198
    Das ist schonmal ein Schritt, ich hab gestern mal mit JavaFX rumgespielt und eine rudimentäre Oberfläche gebaut (siehe Anhang).

    Die "Stage" ist ebenfalls "undecorated" und baut seine Controls selbst (Schließen, Resize).
    Das müsste ich ja nur in ein JWindow oder einen JDialog packen, sodass kein Eintrag in der Taskleiste mehr auftaucht (sollte kein Problem sein) - soweit so gut.


    Nur wie kriege ich das ganze nun auf den Desktop geklebt, d.h. immer als "unterste" aller Anwendungen?
    Lässt sich aus dem JVM-Käfig irgendwie der Task-Kontext herausfinden, sodass ich darauf irgendwie einen Listener oder einen Thread ansetzen kann, um die GUI immer in den Hintergrund zu schicken?
    Andere Möglichkeiten?
    Miniaturansicht angehängter Grafiken Miniaturansicht angehängter Grafiken [GUI] Komponenten auf den Desktop "kleben", kein Eintrag in Taskleiste-calendar_gui.jpg  
     

Ähnliche Themen

  1. JSF "Komponenten dynamisch rendern" oder auch "die 'nächste' Seite beeinflussen"
    Von Wutklumpen im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 1
    Letzter Beitrag: 22.09.09, 13:51
  2. "Automatische Updates"-Symbol aus Taskleiste?
    Von Schumiel im Forum Microsoft Windows
    Antworten: 4
    Letzter Beitrag: 15.04.09, 15:47
  3. "Prozess.Exited" - aber kein Focus zum "SynchronizingObject"
    Von Christian Kusmanow im Forum .NET Archiv
    Antworten: 3
    Letzter Beitrag: 21.10.04, 16:12
  4. Element "a" hat kein Attribut "target" ?
    Von jccTeq im Forum HTML & XHTML
    Antworten: 7
    Letzter Beitrag: 20.01.04, 14:15
  5. Div an ein Object "kleben"
    Von mrsunshine im Forum CSS
    Antworten: 8
    Letzter Beitrag: 15.01.02, 14:38