Hiho,
ich suche was, dass mir dabei hilft, fenster in den systray zu minimieren.
ich meine vor kurzem hier was gelesen zu haben (verweis auf engl. forum), leider finde ich es nicht mehr.
mit der systray_udf geht es auch nicht.
Hiho,
ich suche was, dass mir dabei hilft, fenster in den systray zu minimieren.
ich meine vor kurzem hier was gelesen zu haben (verweis auf engl. forum), leider finde ich es nicht mehr.
mit der systray_udf geht es auch nicht.
Hi,
guck dir mal activeAid von c't an.
Mega
Hi Xeno,
ich meinte eigentlich AutoIt-Code, war nicht so präzise ausgedrückt =)
ich habe z.Z. TrayWizard dafür, aber ich bastel grad an einer eigenen Fenster-Verwaltung, bei der eine solche Funktion auch enthalten sein soll
Moin,
bitte lade dir Holger's UDF herunter und sieh dir das Beispielscript "sample_Win2Tray.au3" an ...
http://www.autoitscript.com/forum/index.php?s=5c6aaa8d9f38c2b1c897c88f00201889&showtopic=20967
Wenn es nur um dein eigenes GUI-Fenster geht, dann ist es natürlich einfacher, aber ich denke du möchtest Fenster anderer Programme in den Info-Bereich bekommen ...
Gruß
Greenhorn
danke greenhorn, ich glaube das habe ich gesucht.
hat das denn schon jmd gemacht ? ich raff nicht mal das bsp ... liegt vllt auch dran, dass "nichts" passiert.
das tool läuft nur 1 sek ... ich habe zwar das gefühl, das scite für eine hundertstel sek verschwindet und ein icon im systray auftaucht, aber ...
Hi,
genau das wolltest du doch!
Mega
ja, das schon, aber ich versteh das bsp nicht.
ich weiß nicht, was ich daraus selber verwenden muss und dann noch, wie ich welche funktion aufrufe.
ja, das schon, aber ich versteh das bsp nicht.
ich weiß nicht, was ich daraus selber verwenden muss und dann noch, wie ich welche funktion aufrufe.
Sieh dir mal Func Win2Tray($sTitle, $hWnd), Func CheckWindows() und Func TrayCallBack($nID, $nMsg) an ...
Gruß
Greenhorn
Hiho,
ich bins mal wieder.
leider bin ich jetzt erst dazu kommen, die funktion produktiv in mein programm einzuarbeiten.
ich sitze grade wieder davor und ... komme mit dem bsp überhaupt nicht klar.
hat jmd ein anderes bsp script, dass mir zum bsp notepad in den systray minimiert?
in dem sample sehe ich (wenn ich nen sleep einbaue), wie ein speicher-icon im systray ensteht.
ansonsten passiert irgendwie garnix, kein fenster was verschwindet oder sonst was.
um ein trayicon zu erstellen, braucht man doch nur 1 zeile code ...
Ich bräuchte auch ein Beispiel, in dem, wenn man auf den X also GUI_EVENT_CLOSE Button drückt, die eigentliche GUI geschlossen wird aber über Systray weiterhin steuern bar ist. Und am besten das noch ein InfoFeld aufpoppt, dass die User auch wissen, dass es in der Systray noch vorhanden ist - danke
Mit GUISetState(@SW_HIDE, $hGUI) kannst Du das Fenster verstecken (TrayIcon bleibt). InfoFeld entweder per MessageBox (mit Zeitdauer), per SplashTextOn() oder mit einem eigenen Fenster.
Aber geht das auch wenn ich die @SW_HIDE als Befehl auf $GUI_EVENT_CLOSE lege?
Er schließt mir immer die ganze GUI?!
Mal ein Beispiel:
#include <GUIConstantsEx.au3>
Opt('MustDeclareVars', 1)
Opt("TrayMenuMode",1)
Example()
Func Example()
Local $show, $exit, $tray
$show = TrayCreateItem("Show")
$exit = TrayCreateItem("Exit")
GUICreate("My GUI state")
GUICtrlCreateLabel("blablabla", 10, 20)
GUISetState()
While 1
$tray = TrayGetMsg()
If $tray = $exit Then Exit
If $tray = $show Then GUISetState(@SW_SHOW)
If GUIGetMsg() = $GUI_EVENT_CLOSE Then GUISetState(@SW_HIDE)
WEnd
EndFunc ;==>Example
Beim Klick auf den Schließen-Button wird das Fenster geschlossen, aber das Tray-Icon bleibt. Das Script läuft weiterhin im Hintergrund. Im Tray-Menü kannst Du dann "Show" auswählen und das Fenster wird wieder angezeigt.
Danke!
Hab es jetzt anders gelöst! Frag mich net warum, aber mit GUISetState klappt das nicht bei mir! Da schließt er mir alles!
Habs jetzt mit WinSetState (title ..etc) gelöst! So funktioniert es soweit, wie ich mir das vorstelle!
Case $test
Run ("C:\Inetpub\tools\VNCViewer\vncviewer.exe")
TrayTip ("Inetpub", "Control Inetpub via SysTray", 3 , 1)
Aber der TrayTip funktioniert noch nicht! Und wenn ich grad dabei bin - wie kann ich per Doppeklick auf das SysTrayIcon die GUI wieder aufrufen?!
@SW_SHOW ist klar, aber wie mach ich ihm den "Doppelklick" klar?
boah ich Spasst!!!!
Wenn man GuiSetState () Innerhalb (so dumm muss man erst mal sein! -.-" ) eine While Schleife packt muss man sich nicht wundern, dass das Fenster immer wieder aufpoppt!
Man ich könnt mich ohrfeigen!