was ist daran falsch?
[autoit]While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitLoop
Case $msg = $topmost_1
AdlibEnable("_Topmost")
Case $msg = $topmost_2
AdlibDisable()
EndSelect
WEnd
was ist daran falsch?
[autoit]While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitLoop
Case $msg = $topmost_1
AdlibEnable("_Topmost")
Case $msg = $topmost_2
AdlibDisable()
EndSelect
WEnd
Hmmm...Du verwendest GUIGetMsg() ohne GUI, die Variablen $topmost_1 und $topmost_2 sind nicht deklariert und die Funktion _Topmost() gibt es nicht.
doch doch gibt es dads ist nur ein ausschnitt. aber woanders kann das problem ja nicht liegen das es nicht funkt
Wieso kann es an nichts anderem liegen das es nicht funktioniert?
An dem geposteten Teil kann man wohl am wenigsten falsch machen!
Es wäre auch intressant zu wissen was nicht funktioniert!
ok hier:
[autoit]$topmostitem = TrayCreateItem("Immer im Vordergrund")
TrayCreateItem("")
$normalitem = TrayCreateItem("Normal")
TrayCreateItem("")
$hideitem = TrayCreateItem("Verstecken")
TrayCreateItem("")
$showitem = TrayCreateItem("Wiederherstellen")
TrayCreateItem("")
$exititem = TrayCreateItem("Beenden")
TraySetState()
While 1
$msg_1 = TrayGetMsg()
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitLoop
Case $msg_1 = $topmostitem
AdlibEnable("_Topmost")
Case $msg_1 = $normalitem
AdlibDisable()
Case $msg_1 = $exititem
ExitLoop
Case $msg_1 = $hideitem
GUISetState(@SW_HIDE,$IEGUI)
Case $msg_1 = $showitem
GUISetState(@SW_SHOW,$IEGUI)
EndSelect
WEnd
Func _Topmost()
[/autoit][autoit][/autoit][autoit]WinSetOnTop("InternetRadio","",1)
Sleep(10)
EndFunc
[/autoit]Das kann immer noch nicht der ganze Code sein! GUIGetMsg funktioniert nur mit GUI's (Stichwort: GUICreate).
Ausserdem hast Du immer noch nicht geschrieben was nicht funktioniert (Fehlerbeschreibung, Fehlermeldung)!
es kommt keine fehlermeldung. hier:
[autoit]#NoTrayIcon
#include <IE.au3>
#include <GUIConstants.au3>
#include <WINDOWSCONSTANTS.au3>
Opt("TrayMenuMode",1)
[/autoit][autoit][/autoit][autoit]Global $lastURL = ""
$IEGUI = GUICreate("InternetRadio",160,165,-1,-1,-1,$WS_EX_TOOLWINDOW)
$oWMP = _wmpcreate(1,0,0,200,200)
_wmpvalue($oWMP,"controls")
$oIE = _IECreateEmbedded()
$GuiIE = GUICtrlCreateObj($oIE,0,0,100,100)
GUISetState()
GUICtrlCreateObj($oIE,0,0)
_wmploadmedia($oWMP,"http://www.wdr.de/wdrlive/media/einslive-wm32.asx",1)
_wmpvalue($oWMP,"play")
$topmostitem = TrayCreateItem("Immer im Vordergrund")
TrayCreateItem("")
$normalitem = TrayCreateItem("Normal")
TrayCreateItem("")
$hideitem = TrayCreateItem("Verstecken")
TrayCreateItem("")
$showitem = TrayCreateItem("Wiederherstellen")
TrayCreateItem("")
$exititem = TrayCreateItem("Beenden")
TraySetState()
While 1
$msg_1 = TrayGetMsg()
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitLoop
Case $msg_1 = $topmostitem
AdlibEnable("_Topmost")
Case $msg_1 = $normalitem
AdlibDisable()
Case $msg_1 = $exititem
ExitLoop
Case $msg_1 = $hideitem
GUISetState(@SW_HIDE,$IEGUI)
Case $msg_1 = $showitem
GUISetState(@SW_SHOW,$IEGUI)
EndSelect
WEnd
Func _Topmost()
[/autoit][autoit][/autoit][autoit]WinSetOnTop("InternetRadio","",1)
Sleep(10)
EndFunc
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]Func _wmpcreate($show, $left, $top, $width = 100, $height = 100)
$oWMP = ObjCreate("WMPlayer.OCX")
If $oWMP = 0 Then Return 0
$oWMP.settings.autoStart = "False"
If $show = 1 Then
GUICtrlCreateObj($oWMP, $left, $top, $width, $height)
EndIf
Return $oWMP
EndFunc
Func _wmploadmedia(ByRef $object, $URL, $autostart = 1 )
$object.URL = $URL
While Not $object.controls.isAvailable("play")
Sleep(1)
WEnd
If $autostart = 1 Then $object.controls.play()
EndFunc
Func _wmpvalue( $object, $setting, $para=1 )
Select
Case $setting = "play"
If $object.controls.isAvailable("play") Then $object.controls.play()
Case $setting = "stop"
If $object.controls.isAvailable("stop") Then $object.controls.stop()
Case $setting = "pause"
If $object.controls.isAvailable("pause") Then $object.controls.pause()
Case $setting = "invisible"
$object.uiMode = "invisible"
Case $setting = "controls"
$object.uiMode = "mini"
Case $setting = "nocontrols"
$object.uiMode = "none"
Case $setting = "fullscreen"
$object.fullscreen = "true"
Case $setting = "step"
If $object.controls.isAvailable("step") Then $object.controls.step($para)
Case $setting = "fastForward"
If $object.controls.isAvailable("fastForward") Then $object.controls.fastForward()
Case $setting = "fastReverse"
If $object.controls.isAvailable("fastReverse") Then $object.controls.fastReverse()
Case $setting = "volume"
$object.settings.volume = $para
Case $setting = "rate"
$object.settings.rate = $para
Case $setting = "playcount"
$object.settings.playCount = $para
Case $setting = "setposition"
$object.controls.currentPosition = $para
Case $setting = "getposition"
Return $object.controls.currentPosition
Case $setting = "getpositionstring";Returns HH:MM:SS
Return $object.controls.currentPositionString
Case $setting = "getduration"
Return $object.currentMedia.duration
EndSelect
EndFunc
Und wo ist jetzt das Problem, ich Versteh irgendwie ned, was ned gehn soll, wenn doch alles Wunderbar funktioniert
was ist daran falsch?
Die fehlende Problembeschreibung!
Die fehlende Problembeschreibung!
Ich übernehm das mal (jetzt müssen wir auch schon selbst die Fehler beschreiben)!
Fehlerbeschreibung: Nach AdlibDisable bleibt das Fenster weiterhin OnTop!
Nach AdlibDisable muss das OnTop-Flag auch wieder entfernt werden!
[autoit]
Case $msg_1 = $normalitem
AdlibDisable()
WinSetOnTop("InternetRadio","",0)
hey danke für die Hilfe