Zitat;Levelbot Ordensbruder für Dark age of Camelot
ist das nicht das Spiel ![]()
Zitat;Levelbot Ordensbruder für Dark age of Camelot
ist das nicht das Spiel ![]()
Nabend, da ich immer Programme offen hab die ich aber nur machmal nachschaue (Kontrollprogramme, VLC, etc.) habe ich mich immer geärgert, das ich die Taskleiste dicht habe. Es gibt natürlich Programme, die sich in die Programme einklingen und diese dann in den Systemtray ablegen, aber ich wollte auch nicht soviele Symbole daunten haben
.
Also zu dem Skript, es ist noch recht einfach gehalten und hat auch bestimmt noch Bugs, aber ich wollte es doch schon mal posten. Wenn das Skript gestartet ist, kann man jedes Fenster was grade aktiv ist durch Strg+Alt+v verschwinden lassen, wenn man auf das Script-Icon klickt kann man dort Programme anzeigen klicken und bekommt eine Liste mit den versteckten Programmen. Wird das Programm beendet (natürlich nicht wenn der Prozess gekillt wird) dann werden alle versteckten Fenster wiederhergestellt.
; Includes
#include <GUIConstants.au3>
#Include <Constants.au3>
#Include <WinAPI.au3>
#include <array.au3>
; Optionen
Opt("TrayMenuMode",1) ; Default tray menu items (Script Paused/Exit) will not be shown.
; Konstanten
Const $SW_HIDE = 0
Const $SW_SHOW = 1
; Variablen / Arrays
Dim $arrTitel[1] ;Fenstertitel
Dim $arrwHnd[1] ;Windowhandle
Dim $hWnd ;für aktives Windowhandle
Dim $anzahl ;Anzahl der versteckten Fenster
Dim $selID ; ausgewälter Listenindex
; GUI
Global $frmShow = GUICreate("Versteckte Fenster", 800, 500)
GUICtrlCreateLabel("Versteckte Fenster:", 30, 10)
$liste = GUICtrlCreateList("",30,25, 740,400)
$cmdrestore = GUICtrlCreateButton("Anzeigen",30,430,120)
$cmdcloseliste = GUICtrlCreateButton("Schliessen",180,430,120)
GUISetState(@SW_HIDE)
; Defaultwerte
$arrTitel[0] = 0
$arrwHnd[0] = 0
$hWnd = _WinAPI_GetDesktopWindow()
$anzahl = 0
$selID = -1
; Hotkeys
HotKeySet("^!v","AktivesVerstecken")
HotKeySet("^!b","Beenden")
; Tray Menü
$restore = TrayCreateItem("Programme anzeigen") ;Hilfe anzeigen
$helpitem = TrayCreateItem("Hilfe") ;Hilfe anzeigen
$aboutitem = TrayCreateItem("Über") ;Über... anzeigen
TrayCreateItem("")
$exititem = TrayCreateItem("Exit") ;Programm beenden
TraySetState()
While 1
$msg = TrayGetMsg()
$msgGUI = GUIGetMsg()
Select
Case $msg = $aboutitem
Msgbox(64,"Über:","Erstellt von J. Kröger")
Case $msg = $exititem
Beenden()
Case $msg = $helpitem
Msgbox(64,"Hilfe:","STRG+ALT+V = Aktives Fenster verstecken" & @CRLF & "STRG+ALT+B = Programm beenden")
Case $msg = $restore
GUIDelete($frmShow)
GUICtrlDelete($liste)
GUICtrlDelete($cmdrestore)
GUICtrlDelete($cmdcloseliste)
Global $frmShow = GUICreate("Versteckte Fenster", 800, 500)
GUICtrlCreateLabel("Versteckte Fenster:", 30, 10)
$liste = GUICtrlCreateList("",30,25, 740,400)
For $i = 1 To $anzahl
GUICtrlSetData(-1,$arrTitel[$i])
Next
$cmdrestore = GUICtrlCreateButton("Anzeigen",30,430,120)
$cmdcloseliste = GUICtrlCreateButton("Schliessen",180,430,120)
GUISetState(@SW_SHOW)
Case $msgGUI = 0
ContinueLoop
Case $msgGUI = $liste
$selID = _ArraySearch($arrTitel,GUICtrlRead($liste),1)
Case $msgGUI = $cmdrestore
If $selID <> -1 Then
If _WinAPI_ShowWindow($arrwHnd[$selID],$SW_SHOW) Then
$anzahl -= 1
_ArrayDelete($arrwHnd,$selID)
_ArrayDelete($arrTitel,$selID)
For $i = 1 To $anzahl
$strLen = StringLen($arrTitel[$i]) -2
If $i < 10 Then
$arrTitel[$i] = "0" & $i & StringMid($arrTitel[$i],3)
Else
$arrTitel[$i] = $i & StringMid($arrTitel[$i],3)
EndIf
Next
EndIf
GUIDelete($frmShow)
EndIf
Case $msgGUI = $cmdcloseliste
GUIDelete($frmShow)
EndSelect
WEnd
Func AktivesVerstecken()
$hWnd = WinGetHandle("")
If _ArraySearch($arrwHnd,$hWnd,1) = -1 Then
$anzahl += 1
_ArrayAdd($arrwHnd,$hWnd)
If $anzahl < 10 Then
_ArrayAdd($arrTitel,"0" & $anzahl & "-" & _WinAPI_GetWindowText($hWnd))
Else
_ArrayAdd($arrTitel,$anzahl & "-" & _WinAPI_GetWindowText($hWnd))
EndIf
_WinAPI_ShowWindow($hWnd,$SW_HIDE)
EndIf
EndFunc
Func Beenden()
If $anzahl > 0 Then
For $i = 1 To $anzahl
_WinAPI_ShowWindow($arrwHnd[$i],$SW_SHOW)
Next
EndIf
Exit 0
EndFunc
Vielleicht kann es ja einer gebrauchen.
Das hier:
$Zahl1 = FileReadLine($file,1)
$Zahl2 = FileReadLine($file,3)
$Zahl3 = FileReadLine($file,5)
$Zahl4 = FileReadLine($file,7)
$Zahl5 = FileReadLine($file,9)
$Zahl6 = FileReadLine($file,11)
hierdurch ersetzen:
$Zahl1 = StringReplace(FileReadLine($file,1),",",".")
$Zahl2 = StringReplace(FileReadLine($file,3),",",".")
$Zahl3 = StringReplace(FileReadLine($file,5),",",".")
$Zahl4 = StringReplace(FileReadLine($file,7),",",".")
$Zahl5 = StringReplace(FileReadLine($file,9),",",".")
$Zahl6 = StringReplace(FileReadLine($file,11),",",".")
Wenn du die Zahlen aus der Textdatei liest, dann ist da ein Komma drinnen, es muss aber ein Punkt sein, damit er richtig rechnen kann.
Da ich oft an verschiedenen Rechnern bin und ich gefragt wurde, hier ein kleines Skript zum erstellen einer VPN Verbindung. Getestet unter Windows XP, die Zugangsdaten in dem Skript sind von SwissVPN, zum testen ganz schön
#cs
Dieses Skript erstellt eine neue VPN Verbindung
unter Windows XP, ohne Dialog Assistent.
#ce
Opt("WinTitleMatchMode", 2)
[/autoit] [autoit][/autoit] [autoit]$titel = "Assistent für neue Verbindungen"
[/autoit] [autoit][/autoit] [autoit]; Remote Adresse
$Hostname = "connect.swissvpn.net"
; Wie die VPN Verbindung benannt werden soll
$Verbindungsname = "Meine VPN Verbindung"
; Sollen gleich Anmeldedaten eingetragen werden?
; True = JA False = NEIN
$usereintragen = True
$user = "swissvpntest"
$passwort = "swissvpntest"
Run("rasphone -a","",@SW_HIDE )
Sleep(2500)
WinWaitActive($titel)
ControlClick($titel,"","Button2")
ControlClick($titel,"","Button6")
Sleep(600)
ControlClick($titel,"","Button1")
ControlClick($titel,"","Button8")
Sleep(600)
ControlSetText($titel,"","Edit1",$Hostname)
ControlClick($titel,"","Button8")
Sleep(600)
ControlSetText($titel,"","Edit1",$Verbindungsname)
ControlClick($titel,"","Button13")
If $usereintragen = False Then Exit 0
[/autoit] [autoit][/autoit] [autoit]run("rasphone -d " & """" & $Verbindungsname & """","",@SW_HIDE )
Sleep(2500)
$titel = "Verbindung mit """ & $Verbindungsname & """ herstellen"
WinWaitActive($titel)
ControlSetText($titel,"","Edit1",$user)
ControlSetText($titel,"","Edit2",$passwort)
ControlClick($titel,"","Button1")
ControlClick($titel,"","Button2")
ControlClick($titel,"","Button4")
$titel = "Verbindung mit """ & $Verbindungsname & """"
If WinWaitActive($Verbindungsname,"",15) = 1 then
ControlClick($Verbindungsname,"","Button1")
Exit 0
EndIf
$titel = "Fehler bei der Verbindung mit """ & $Verbindungsname & """"
If WinWaitActive($titel,"",5) = 1 Then ControlClick($titel,"","Button2")
Exit 0
99.980 (Meine Tochter glaubt mir nie das ich soooo weit Zählen kann)
Nabend,
da ich die Frage ganz interessant fand, hab ich mal versucht eine allgemeine Lösung zu basteln auf WMI Basis:
MsgBox(0,"",GetNetStatus("LAN-Verbindung"))
[/autoit] [autoit][/autoit] [autoit]Func GetNetStatus($Device)
#cs
Device = Name so wie er in Netzwerkverbindungen angezeigt wird, z.B. "Drathtlose Neztwerkverbindung")
Rückgabewerte:
1 = online
0 = offline
-1 = Konnte Netzwerkkarte nicht finden
-2 = Konnte IP nicht auslesen
#ce
Local $wbemFlagReturnImmediately = 0x10
Local $wbemFlagForwardOnly = 0x20
Local $colItems = ""
Local $strComputer = "localhost"
Local $objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT Index FROM Win32_NetworkAdapter WHERE NetConnectionID = '" & $Device & "'", "WQL", $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
Local $index = -1
For $objItem In $colItems
$index = $objItem.Index
Next
If $index = -1 Then Return -1
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE Index = " & $index, "WQL", $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
Local $ip = -1
For $objItem In $colItems
$ip = $objItem.IPAddress(0)
Next
If $ip = -1 Then Return -2
If $ip = "0" Or $ip = "0.0.0.0" Then
Return 0
Else
Return 1
EndIf
EndFunc
und da ich grade dabei war, eine grafische Anzeige für alle Netzwerkverbindungen:
#include <GUIConstants.au3>
#include <array.au3>
$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20
$colItems = ""
$output = ""
$strComputer = "localhost"
Dim $Caption[1]
$Caption[0] = 0
Dim $Index[1]
$Index[0] = 0
Dim $IP[1]
$IP[0] = 0
Dim $Status[1]
$Status[0] = 0
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT Description,Index FROM Win32_NetworkAdapter WHERE NetConnectionStatus is not null", "WQL", _
$wbemFlagReturnImmediately + $wbemFlagForwardOnly)
For $objItem In $colItems
_ArrayAdd($Caption,$objItem.Description)
$Caption[0] = $Caption[0] + 1
_ArrayAdd($Index,$objItem.Index)
$Index[0] = $Index[0] + 1
Next
$count = $Caption[0]
[/autoit] [autoit][/autoit] [autoit]For $i = 1 to $count
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE Index = " & $Index[$i], "WQL", _
$wbemFlagReturnImmediately + $wbemFlagForwardOnly)
For $objItem In $colItems
_ArrayAdd($IP,$objItem.IPAddress(0))
$IP[0] = $IP[0] + 1
Next
Next
$minus = 0
[/autoit] [autoit][/autoit] [autoit]For $i = 1 to $count
Select
Case $IP[$i] = '0'
$minus += 1
_ArrayAdd($Status,"loos")
Case $IP[$i] = '0.0.0.0'
_ArrayAdd($Status,"offline")
Case Else
_ArrayAdd($Status,"online")
EndSelect
Next
$minus = 25 * $minus
$hoehe = 50 + 25 * $count
$hoehe -= $minus
#Region ### START Koda GUI section ### Form=
$frmMain = GUICreate("Netzwerkstatus", 650, $hoehe, 443, 224, BitOR($WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS))
$Label1 = GUICtrlCreateLabel("Bezeichnung", 232, 8, 81, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Label2 = GUICtrlCreateLabel("IP-Adresse", 88, 8, 71, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Label3 = GUICtrlCreateLabel("Status", 8, 8, 41, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$hoehe = 35
For $i = 1 to $count
If $IP[$i] <> '0' Then
GUICtrlCreateLabel($Caption[$i], 232, $hoehe, 418, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
GUICtrlCreateLabel($IP[$i], 88, $hoehe, 71, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
GUICtrlCreateLabel($Status[$i], 8, $hoehe, 41, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
If $Status[$i] = "online" Then GUICtrlSetColor(-1,"0x00ff00") ;grün
If $Status[$i] = "offline" Then GUICtrlSetColor(-1,"0xff0000") ;rot
$hoehe += 25
EndIf
Next
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Zitatif $wy = $ry & $wx = $ry then ; Das geht leider nicht und hierrum gehts !!
Das & ist falsch, da muss ein AND hin.
Freu mich drauf, kannst Du ja mal online stellen, schaue mir immer gerne gute CS Clips an.
Hier noch mal ein wirklich einfaches Beispiel, aber ich würde mir mal die Hilfe Datei ansehen, das sind nun wirklich elementare Sachen (nicht böse gemeint). Zudem warum werden Beispiele gepostet die Du dir nicht mal ansiehst, in meinen Skript zunutze ich eigentlich alle Funktionen die du benötigst, vielleicht nicht in dem Zusammenhang wie Du es gerne haben möchtest, aber man kann es leicht abändern.
Wie schon gesagt, nicht böse gemeint, nur ich denke, das es eine gute Hilfe Datei beim AutoIT gibt, die man auch ruhig mal benutzen darf ![]()
Hier nun das Beispiel:
#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]$pfad = @TempDir & "\"
$server = "http://www.hardcopy.de/"
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 350, 187, 193, 125)
$Combo1 = GUICtrlCreateCombo("Combo1", 16, 24, 241, 25)
GUICtrlSetData(-1,"hc.exe|hcf.exe")
$Button1 = GUICtrlCreateButton("Button1", 24, 80, 233, 41, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Combo1
If FileExists($pfad & GUICtrlRead($Combo1)) = 1 Then
GUICtrlSetState($Button1,$GUI_Disable)
Else
GUICtrlSetState($Button1,$GUI_Enable)
EndIf
Case $Button1
If InetGet($server & GUICtrlRead($Combo1),$pfad & GUICtrlRead($Combo1),1,0) Then MsgBox(64,"Info","Download OK")
EndSwitch
WEnd
ZitatIch wollte mal fragen, ob es möglich ist das Script so einzustellen, dass wenn ich im DropDownMenu
einen Eintrag auswähle, das Script sofort prüft ob die Datei bereits gedownloadet wurde oder nicht?!
Wenn Du einen festen Pfad hast wo der Benutzer seinen Download ablegen muss, dann ja. Halte ich aber für nicht so klug, da der Benutzer ja selber entscheiden will wo er seine Dateien ablegt. Zum prüfen ob eine Datei besteht :FileExists
ZitatUnd nocheinmal nachdem die Datei gedownloadet wurde (das bekomm ich mit dem entsprechenden Befehle denk ich mal alleine hin)
Das ist eine gute Idee, mit InetGetSize($url) bekommste die Größe wie sie sein soll, mit FileGetSize die Größe der runtergeladenen Datei, schaue ob sie gleich groß sind und du weißt ob der Download komplett war.
Zweite Möglichkeit, wenn du den Download nicht im Hintergrund laufen lässt, $result = InetGet($url) wenn eine 1 in $result ist war alles ok sonst steht da eine 0 drin.
Hallo,
ich fand das interessant und habe mir auch mal so ein kleines Skript gebaut, damit es nicht ganz unnütze ist, stelle ich es hier mal rein ![]()
Mein Dateiaufbau ist einach:
Datei1.xxx
Datei2.xxx
......
#include <GUIConstants.au3>
#include <Array.au3>
; Url zum Webverzeichnis
Dim $ServerUrl = "http://www.DEINSERVER.de/test/"
; Dateiliste die runtergeladen werden soll
Dim $FileList = "files.txt"
;Speicherpfad für Liste
Dim $SaveFileList = @TempDir & "\files.txt"
;Textdatei laden
If InetGet($ServerUrl & $FileList,$SaveFileList,1) = 0 Then
MsgBox(48,"Feheler...","Fehler beim download der Dateiliste")
Exit 1
EndIf
;Dateiliste zum lesen öffnen
Dim $fso = FileOpen($SaveFileList,0)
;Inhalt der Datei einlesen
Dim $txt = FileRead($fso)
;Dateiliste schliessen
FileClose($fso)
;@LF aus der $txt Variabele entfernen
$txt = StringReplace($txt,@CRLF,"|")
;Form
$frmMain = GUICreate("FileLoader", 285, 150, 193, 125)
$pcbDownload = GUICtrlCreateProgress(24, 64, 233, 17)
$infoLabel = GUICtrlCreateLabel("",24,84,233,25,$SS_CENTER )
$cmdButton = GUICtrlCreateButton("Start Download", 24, 104, 233, 25, 0)
GUICtrlSetState(-1,$GUI_DISABLE)
$FileList = GUICtrlCreateCombo("FileList", 24, 24, 233, 25)
GUICtrlSetData(-1, $txt)
GUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit];Variable für die derzeit Ausgewählte Datei
Dim $selectet
;Variable für die Dateiendung
Dim $mediaformat
;Speicherort
Dim $SaveFile
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $cmdButton
$SaveFile = FileSaveDialog("Datei speichern..",@DesktopDir,"Video (*." & $mediaformat & ")",2,GUICtrlRead($FileList))
If NOT @error Then RunDownload()
Case $FileList
GUICtrlSetData($infoLabel,"")
GUICtrlSetData($pcbDownload,0)
$selectet = $ServerUrl & GUICtrlRead($FileList)
InetGetSize($selectet)
If @error Then
GUICtrlSetState($cmdButton,$GUI_DISABLE)
Else
GUICtrlSetState($cmdButton,$GUI_ENABLE)
EndIf
$mediaformat = StringRight(GUICtrlRead($FileList),3)
EndSwitch
WEnd
Func RunDownload()
GUISetState(@SW_DISABLE)
$FileSize = InetGetSize($selectet)
InetGet($selectet,$SaveFile,1,1)
$curSize = 0
Do
GUICtrlSetData($pcbDownload,$curSize)
$curFileSize = FileGetSize($SaveFile)
$curSize = $curFileSize * 100
$curSize = $curSize / $FileSize
$curSize = Ceiling($curSize)
$curFileSize = Round($curFileSize / 1024 / 1024,2)
GUICtrlSetData($infoLabel,$curFileSize & " - " & Round($FileSize / 1024 / 1024,2) & " MB (" & $curSize & "%)")
Sleep(200)
ConsoleWrite($curSize & @lf)
Until $curSize >= 99
GUISetState(@SW_ENABLE)
EndFunc
Öhm wundert mich nicht das es bei dir nicht geht ![]()
Du liest in Zeile 18 den Inhalt ein mit : GUICtrlRead($demoname)
Das solltest du erst machen wenn jemand den Button gedrückt hat.
Probier es mal, falls du sonst noch Fragen hast immer her damit.
Moin,
du must den input auslesen: GUICtrlRead($demoname)
#include <GUIConstants.au3>
Global $url
GUICreate("My GUI") ; will create a dialog box that when displayed is centered
$demoname = GUICtrlCreateInput("demo_de_cbble_27_12", 8, 8, 265, 21)
$button = GUICtrlCreateButton("Zeige Url",8,30)
GUISetState (@SW_SHOW) ; will display an empty dialog box
[/autoit] [autoit][/autoit] [autoit]; Run the GUI until the dialog is closed
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $button
Global $url = "http://www.meine-seite.de/" & GUICtrlRead($demoname) & ".dem"
MsgBox(64,"Url",$url)
EndSelect
Wend
Wie es einfacher geht, hatte nur 5 min. zeit als ich das zusammen gebastelt habe
darum gehe ich einfach mal davon aus das es einfacher geht
Leider ist mir auf die schnelle nix besseres eingefallen, geht bestimmt auch viiiiiiiiiel einfacher:
;Includes
#include <Array.au3>
;Optionen setzen
Opt("WinTitleMatchMode", 2)
; Einlesen der ClassList und in Array speichern
$arr_class_list = StringSplit(WinGetClassList("",""),@LF)
; Array mal anzeigen lassen
_ArrayDisplay($arr_class_list)
; Anzahl der Arrayeinträge und löschen der ersten Eintrags mit der Anzahl
$count = $arr_class_list[0]
_ArrayDelete($arr_class_list,0)
;Leere Array Felder lösche ich mal raus
While _ArraySearch($arr_class_list,"") <> -1
$id = _ArraySearch($arr_class_list,"")
_ArrayDelete($arr_class_list,$id)
$count -= 1
WEnd
; Array mal anzeigen lassen
_ArrayDisplay($arr_class_list)
MsgBox(0,"","Anzahl Einträge = " & $count)
; Meine Arrays für die Ausgabe
Dim $arrText[1]
Dim $arrCount[1]
;StartIndex
$index = 1
; Aussortieren der doppelten und die Anzahl speichern
Do
_ArrayAdd($arrText,$arr_class_list[0])
_ArrayAdd($arrCount,1)
_ArrayDelete($arr_class_list,0)
$count -= 1
If $count = 0 Then ExitLoop
While _ArraySearch($arr_class_list,$arrText[$index]) <> -1
$id = _ArraySearch($arr_class_list,$arrText[$index])
_ArrayDelete($arr_class_list,$id)
$count -= 1
$arrCount[$index] = $arrCount[$index] + 1
WEnd
$index += 1
Until $count = 0
_ArrayDelete($arrText,0)
_ArrayDelete($arrCount,0)
; Neues Array für die Finale Ausgabe
Dim $arrSum[$index]
$index -= 1
;Array aus den beiden anderen Array füllen
For $i = 0 to $index
$arrSum[$i] = $arrText[$i] & " = " & $arrCount[$i]
Next
;Ausgabe
_ArrayDisplay($arrSum)
kannst Du machen, wenn du mir zeigst das es bei der Installation von AutoIT im Include Verzeichnis vorhanden war ![]()
Nachtrag, habe jetzt auch noch eine ohne Include eingereicht, is glaub ich sogar noch weniger q-text ![]()
ZitatEs kann alles verwendet werden, was die Version 3.2.10 bietet.
Dann müssten doch auch includes auch erlaubt sein, oder?
taucher_2006
Hatte irgendwie den selben Gedanken ![]()
Global $IMBStat
HotKeySet("$", "IMB")
HotKeySet("{ESC}", "Terminate")
While 1
Sleep(1000)
WEnd
Func IMB()
$IMBStat = NOT $IMBStat
While $IMBStat
Send("8")
sleep(250)
WEnd
ToolTip("")
EndFunc
Func Terminate()
Exit 0
EndFunc
Von progandy:
ZitatWie wär ne Suche im eng. Forum (GUISCrollBars)
Hab ich geschaut aber es nicht gesehen ![]()
So hier mein Vorschlag:
#include<GUIConstants.au3>
#include<GUIScrollBars.au3>
$GUI = GUICreate("test", 500, 700, -1, -1, BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU));, $WS_SIZEBOX))
_GUIScrollBars_Init ($GUI, 500, 750) ;festlegen wann die Scrollbalken kommen sollen (900 = Breite, 50 = Höhe)
GUIRegisterMsg($WM_VSCROLL, "MY_WM_VSCROLL")
GUIRegisterMsg($WM_HSCROLL, "MY_WM_HSCROLL")
GUIRegisterMsg($WM_SIZE, "MY_WM_SIZE")
$icon = GUICtrlCreateIcon("shell32.dll",10, 100, 100, 50, 50)
GUISetState()
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $icon
$pos = ControlGetPos("","",$icon) ; Abfragen wo das Icon ist
$left = $pos[0] + 70 ; Zu der X Pos. 70 addieren
$top = $pos[1] ; Y abspeichern
GUICtrlCreateIcon("shell32.dll", 20, $left, $top, 50, 50) ;hier die beiden Vars übergeben
;soll immer neben dem letzen icon ein neues erstellt werden:
;$icon = GUICtrlCreateIcon("shell32.dll", 20, $left, $top, 50, 50)
EndSelect
Wend