1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. autoBert

Beiträge von autoBert

  • Problem mit "Keybinder"

    • autoBert
    • 25. Oktober 2009 um 05:31

    Hallo slax,

    lies dir mal dir Forenregeln durch,

    mfg (Auto)Bert

  • hotkeys bei autostart?

    • autoBert
    • 24. Oktober 2009 um 05:00

    Hallo itcrowds,

    dann poste doch bitte dein Skript, damit man es testen kann,

    mfg (Auto)Bert

  • Tool zum auslesen vom angemeldeten Rechnern im Netzwerk

    • autoBert
    • 24. Oktober 2009 um 04:08

    Hallo achim89,

    schau dir die Hilfe zu _WinNet_GetUser an,

    mfg (Auto)Bert

  • ReDim bei Array löscht Array-Einträge

    • autoBert
    • 23. Oktober 2009 um 22:54

    Hallo TinkyWinky,

    Zitat

    "Auszug aus der Hilfe zu REDIM" Das Schlüsselwort ReDim ist ähnlich zu Dim, außer dass ReDim die Werte im Array nicht löscht, wenn die Arraygröße verändert wird. Die Anzahl der Dimensionen des Arrays muss dazu allerdings gleich bleiben. Das Array erhält den Gültigkeitsbereich (Global oder Lokal), den es vor der Größenanpassung hatte.

    du musst also das Array, gleich 2D deklarieren und nach StringSplit die Arraygröße anpassen,

    mfg (Auto)Bert

  • Icon über Pic Problem

    • autoBert
    • 23. Oktober 2009 um 22:49

    Hallo user2009,

    du must beim erstellen mir GuiCreatePic den Stil $WS_CLIPSIBLINGS verwenden, zusätzlich noch

    [autoit]

    GUICtrlSetState($hPic, BitOR($GUI_ONTOP, $GUI_SHOW)) und dann klappt's

    [/autoit]
    Spoiler anzeigen
    [autoit]

    #include <WinAPI.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $hgui = GUICreate ( "test", 500 , 500 )
    GUISetBkColor (0x00ff00)
    GUICtrlCreatePic ( 'hg.jpg',0,0 ,$WS_CLIPSIBLINGS)
    $hPic = GUICtrlCreatePic ('',40,40,48,48 )
    __SetIconAlpha($hPic, 'test.ico',0, 48, 48)

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetState($hPic, BitOR($GUI_ONTOP, $GUI_SHOW))

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()
    While 1
    Switch GUIGetMsg()
    Case -3
    Exit
    case $hPic
    MsgBox(0,"","Das Icon wurde angeklickt!!!")
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func __SetIconAlpha($hWnd, $sIcon, $iIndex, $iWidth, $iHeight)
    If Not IsHWnd($hWnd) Then
    $hWnd = GUICtrlGetHandle($hWnd)
    If $hWnd = 0 Then
    Return SetError(1, 0, 0)
    EndIf
    EndIf
    Local $hIcon = __WinAPI_ShellExtractIcons($sIcon, $iIndex, $iWidth, $iHeight)
    If $hIcon = 0 Then
    Return SetError(1, 0, 0)
    EndIf
    Local $hBitmap, $hObj, $hDC, $hMem, $hSv
    $hDC = _WinAPI_GetDC($hWnd)
    $hMem = _WinAPI_CreateCompatibleDC($hDC)
    $hBitmap = _WinAPI_CreateCompatibleBitmap($hDC, $iWidth, $iHeight)
    $hSv = _WinAPI_SelectObject($hMem, $hBitmap)
    _WinAPI_DrawIconEx($hMem, 0, 0, $hIcon, $iWidth, $iHeight, 0, 0, 2)
    _WinAPI_ReleaseDC($hWnd, $hDC)
    _WinAPI_SelectObject($hMem, $hSv)
    _WinAPI_DeleteDC($hMem)
    _WinAPI_DestroyIcon($hIcon)
    _WinAPI_DeleteObject(_SendMessage($hWnd, 0x0172, 0, 0))
    _SendMessage($hWnd, 0x0172, 0, $hBitmap)
    $hObj = _SendMessage($hWnd, 0x0173)
    If $hObj <> $hBitmap Then
    _WinAPI_DeleteObject($hBitmap)
    EndIf
    Return 1
    EndFunc ;==>_SetIconAlpha

    [/autoit] [autoit][/autoit] [autoit]

    Func __WinAPI_ShellExtractIcons($sIcon, $iIndex, $iWidth, $iHeight)
    Local $Ret = DllCall('shell32.dll', 'int', 'SHExtractIconsW', 'wstr', $sIcon, 'int', $iIndex, 'int', $iWidth, 'int', $iHeight, 'ptr*', 0, 'ptr*', 0, 'int', 1, 'int', 0)
    If (@error) Or ($Ret[0] = 0) Or ($Ret[5] = Ptr(0)) Then
    Return SetError(1, 0, 0)
    EndIf
    Return $Ret[5]
    EndFunc ;==>_WinAPI_ShellExtractIcons

    [/autoit]

    mfg (Auto)bert

  • Wiedergeburt?!

    • autoBert
    • 23. Oktober 2009 um 21:46

    Hallo @random(Tier,Mensch),

    da könnt ihr nur hoffen, dass ihr keine BUGS und dann auch noch gefixt werdet,

    mfg (Auto)Bert

  • Navigation -> neuer Content

    • autoBert
    • 23. Oktober 2009 um 20:20

    Hallo MyticSun,

    üblicherweise benutzt man dazu ein TabControl:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <TabConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 472, 162, 192, 124)
    GUICtrlCreateTab(5, 5, 462, 152);, BitOR($TCS_FLATBUTTONS,$TCS_VERTICAL ))
    GUICtrlCreateTabItem("1. Tab")
    $Group2 = GUICtrlCreateGroup("Group2", 28, 38, 233, 153)
    $Edit1 = GUICtrlCreateEdit("", 52, 62, 185, 89)
    GUICtrlSetData(-1, "Edit1")
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUICtrlCreateTabItem("2. Tab")
    $Group2 = GUICtrlCreateGroup("Group3", 128, 38, 233, 153)
    $Button5 = GUICtrlCreateButton("Button5", 144, 60, 75, 25, $WS_GROUP)
    $Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 272, 76, 97, 17)
    $Combo1 = GUICtrlCreateCombo("Combo1", 176, 116, 145, 25)
    GUICtrlCreateTabItem("3. Tab")
    GUICtrlCreateTabItem(""); Beendet die Tab Definition

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    EndSwitch
    WEnd

    [/autoit]

    mfg (Auto)Bert

  • GUICtrlCreateListViewItem einer ListView in eine andere ListView per Drag & Drop Einfügen

    • autoBert
    • 23. Oktober 2009 um 19:34

    Hallo acealone,

    falls du mehrere gleichzeitig kopieren möchtest:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <GUIConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiListView.au3>
    #include <ListViewConstants.au3>
    ;#include <array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $main = GUICreate("Testlistview", 600, 400)
    $listview = GUICtrlCreateListView("Gruppe1", 10, 10, 100, 100, BitOR($LVS_REPORT, $LVS_SHOWSELALWAYS), BitOR($LVS_EX_FULLROWSELECT, $WS_EX_CLIENTEDGE))
    $listview2 = GUICtrlCreateListView("Gruppe2", 150, 10, 100, 100)
    GUICtrlSetState($listview2, $GUI_DROPACCEPTED)
    for $i = 1 to 9
    $listitem = GUICtrlCreateListViewItem("test" & $i, $listview)
    Next

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()
    While 1
    $msg = GUIGetMsg()
    If $msg = $GUI_EVENT_DROPPED Then
    $ar = _GUICtrlListView_GetSelectedIndices($ListView,true)
    ;_ArrayDisplay($ar)

    [/autoit] [autoit][/autoit] [autoit]

    for $i = 1 to $ar[0]
    $sItem = _GUICtrlListView_GetItemTextString($ListView,$ar[$i])
    GUICtrlCreateListViewItem ($sItem, $listview2 )
    next
    EndIf
    If $msg = $GUI_EVENT_CLOSE Then Exit
    WEnd

    [/autoit]

    mfg (Auto)Bert

  • GUI mit Child-Gui und Buttons

    • autoBert
    • 23. Oktober 2009 um 18:48

    Hallo Hessebou, versuch einmal diese Variante:

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ButtonConstants.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #cs ----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit]

    AutoIt Version: 3.3.0.0
    Authors: AutoBert: MainWindow with personalized Icons
    funkey: Menu-everywhere

    [/autoit] [autoit][/autoit] [autoit]

    DEMO: YES

    [/autoit] [autoit][/autoit] [autoit]

    #ce ----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Opt("GUIOnEventMode", 1) ;ONEvent Mode.

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Global $iWidht = 1024, $iHeight = 550, $bMaxi = False

    [/autoit] [autoit][/autoit] [autoit]

    HotKeySet("{F6}", "_hide")
    $hfrmMain = GUICreate("", $iWidht, $iHeight, 0, 0, BitOR($WS_POPUPWINDOW, $WS_THICKFRAME))
    ;GUICtrlSetBkColor(-1, 0xffffff) ; alles was die Farbe weiß hat, ist transparent
    GUISetOnEvent($GUI_EVENT_CLOSE, "_exitMain")
    ;$hjpgBckgrnd = GUICtrlCreatePic(@ScriptDir & "\bin\beetle.JPG", 0, 0, $iWidht, $iHeight)
    $hjpgBckgrnd = GUICtrlCreatePic(@ScriptDir & "\bin\beetle.JPG", 0, -40, $iWidht, $iHeight, $WS_CLIPSIBLINGS)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $hfrmChild= GUICreate("GUI",$iWidht,$iHeight,-1,-1,$WS_POPUP,$WS_EX_MDICHILD,$hfrmMain)
    WinSetTrans ("GUI","",170)
    WinSetOnTop("GUI","",1)
    ;$hlblMyTitle = GUICtrlCreateLabel("Meine personalisierte GUI", 200, 0, 500, 22, -1, $GUI_WS_EX_PARENTDRAG) evtl zum Verschieben der GUIS
    $hlblMyTitle = GUICtrlCreateLabel("Meine personalisierte GUI", 200, 0, 500, 22)
    GUICtrlSetBkColor(-1, 0xffffff) ; auf gleiche Farbe wie Hintergrundbild setzen
    GUICtrlSetFont(-1, 16)
    GUICtrlSetResizing(-1, $GUI_DOCKAll)

    [/autoit] [autoit][/autoit] [autoit]

    $hicoApp = GUICtrlCreateIcon(@ScriptDir & "\bin\App.ico", -1, 0, 0, 48, 32)
    GUICtrlSetOnEvent($hicoApp, "_about")
    $hicoClose = GUICtrlCreateIcon(@ScriptDir & "\bin\close.ico", -1, 900, 0, 16, 16)
    GUICtrlSetOnEvent($hicoClose, "_exitMain")
    $hicoMini = GUICtrlCreateIcon(@ScriptDir & "\bin\mini.ico", -1, 820, 0, 16, 16)
    GUICtrlSetOnEvent($hicoMini, "_Minimize")
    $hicoMaxi = GUICtrlCreateIcon(@ScriptDir & "\bin\maxi.ico", -1, 860, 0, 16, 16)
    GUICtrlSetOnEvent($hicoMaxi, "_Maximize")
    $hicoNorm = GUICtrlCreateIcon(@ScriptDir & "\bin\normalize.ico", -1, 860, 0, 16, 16)
    GUICtrlSetOnEvent($hicoNorm, "_Normalize")
    GUICtrlSetState($hicoNorm, $GUI_HIDE)

    [/autoit] [autoit][/autoit] [autoit]

    $hicoExit = GUICtrlCreateIcon(@ScriptDir & '\bin\Close.ico', 0, $iWidht - 150, $iHeight - 160, 48, 48);, $WS_CLIPSIBLINGS, $WS_EX_LAYERED)
    GUICtrlSetOnEvent(-1, "_exitMain")
    GUICtrlSetState(-1, BitOR($GUI_ONTOP, $GUI_SHOW))
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    $hlblExit = GUICtrlCreateButton("be&enden", $iWidht - 150, $iHeight - 115,48,20)
    GUICtrlSetOnEvent(-1, "_exitMain")
    GUISwitch($hfrmMain)
    #Region ;ab hier Menü überall plazieren siehe http://www.autoit.de/index.php?page…0614#post110614 von funkey
    GUICtrlCreateLabel('', 0, 0, $iWidht, 2, 0x1000)
    GUICtrlSetResizing(-1, $GUI_DOCKAll)

    [/autoit] [autoit][/autoit] [autoit]

    $MenueDatei = GUICtrlCreateLabel('&Datei', 60, 5, 40, 19, 0x201)
    GUICtrlSetResizing(-1, $GUI_DOCKAll)
    GUICtrlSetBkColor(-1, 0xffffff) ; alles was die Farbe weiß hat, ist transparent
    GUICtrlSetOnEvent(-1, '_MenuPressed')

    [/autoit] [autoit][/autoit] [autoit]

    $DateiContext = GUICtrlCreateContextMenu(GUICtrlCreateDummy())
    $OptionsOpen = GUICtrlCreateMenuItem("Ö&ffnen", $DateiContext)
    GUICtrlSetOnEvent(-1, "_openJPG")
    $OptionsClose = GUICtrlCreateMenuItem("S&chließen", $DateiContext)
    GUICtrlCreateMenuItem("", $DateiContext)
    GUICtrlSetOnEvent(-1, "_Close")
    $OptionsExit = GUICtrlCreateMenuItem("B&eenden", $DateiContext)
    GUICtrlSetOnEvent(-1, '_ExitMain')

    [/autoit] [autoit][/autoit] [autoit]

    $MenueHelp = GUICtrlCreateLabel("&Hilfe", 135, 5, 30, 19, 0x201)
    GUICtrlSetResizing(-1, $GUI_DOCKAll)
    GUICtrlSetBkColor(-1, 0xffffff) ; alles was die Farbe weiß hat, ist transparent
    GUICtrlSetOnEvent(-1, '_MenuPressed')

    [/autoit] [autoit][/autoit] [autoit]

    $HelpContext = GUICtrlCreateContextMenu(GUICtrlCreateDummy())
    $HelpWWW = GUICtrlCreateMenuItem("&Website", $HelpContext)
    GUICtrlSetOnEvent(-1, '_Website')
    GUICtrlCreateMenuItem("", $HelpContext)
    $HelpAbout = GUICtrlCreateMenuItem("Ü&ber...", $HelpContext)
    GUICtrlSetOnEvent(-1, '_About')

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateLabel('', 0, 0, $iWidht, 2, 0x1000)
    GUICtrlSetResizing(-1, $GUI_DOCKAll)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Global $AccelKeys[3][2] = [["!d", $MenueDatei],["!h", $MenueHelp],["!e", $hlblExit]]
    GUISetAccelerators($AccelKeys)
    ;ende Menü überall
    #EndRegion
    GUISetState(@SW_SHOW, $hfrmMain)
    GUISetState(@SW_SHOW, $hfrmChild)

    [/autoit] [autoit][/autoit] [autoit]

    While True
    Sleep(1000)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _exitMain()
    Exit
    EndFunc ;==>_exitMain

    [/autoit] [autoit][/autoit] [autoit]

    Func _Minimize()
    GUISetState(@SW_MINIMIZE, $hfrmMain)
    EndFunc ;==>_Minimize

    [/autoit] [autoit][/autoit] [autoit]

    Func _Maximize()
    GUISetState(@SW_MAXIMIZE, $hfrmMain)
    GUICtrlSetState($hicoMaxi, $GUI_HIDE)
    GUICtrlSetState($hicoNorm, $GUI_SHOW)
    EndFunc ;==>_Maximize

    [/autoit] [autoit][/autoit] [autoit]

    Func _Normalize()
    GUISetState(@SW_RESTORE, $hfrmMain)
    GUICtrlSetState($hicoNorm, $GUI_HIDE)
    GUICtrlSetState($hicoMaxi, $GUI_SHOW)
    EndFunc ;==>_Normalize

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; -------------- func
    Func _hide()
    GUISetState(@SW_HIDE, $hfrmMain)
    HotKeySet("{F6}", "_show")
    EndFunc ;==>_hide

    [/autoit] [autoit][/autoit] [autoit]

    Func _show()
    GUISetState(@SW_SHOW, $hfrmMain)
    HotKeySet("{F6}", "_hide")
    EndFunc ;==>_show

    [/autoit] [autoit][/autoit] [autoit]

    Func _OpenJPG()
    $sjpgBckgrnd = FileOpenDialog("Hintergrundbild auswählen", @ScriptDir & "\bin", "Images (*.jpg)", 1, "", $hfrmMain)
    GUICtrlSetImage($hjpgBckgrnd, $sjpgBckgrnd)
    EndFunc ;==>_OpenJPG

    [/autoit] [autoit][/autoit] [autoit]

    Func _Close()
    MsgBox(0, "Button", "Schliessen wurde geklickt!")
    EndFunc ;==>_Close

    [/autoit] [autoit][/autoit] [autoit]

    ;ab hier Funktionen von Menü überall plazieren siehe http://www.autoit.de/index.php?page…0614#post110614 von funkey
    Func _MenuPressed()
    Switch @GUI_CtrlId
    Case $MenueDatei
    ShowMenu($hfrmMain, $MenueDatei, $DateiContext)
    Case $MenueHelp
    ShowMenu($hfrmMain, $MenueHelp, $HelpContext)
    EndSwitch
    EndFunc ;==>_MenuPressed

    [/autoit] [autoit][/autoit] [autoit]

    Func _About()
    MsgBox(64, "About...", "Beispiel für personalisierte GUI von (Auto)Bert" & @CRLF & "mit Beispiel für ein eigenes Menü von funkey" & @CRLF & "www.autoit.de/index.php?page=Thread&postID=110614#post110614")
    EndFunc ;==>_About

    [/autoit] [autoit][/autoit] [autoit]

    Func _Website()
    MsgBox(64, "Website...", "http://www.autoit.de/index.php?page=Thread&postID=116673#post116673")
    EndFunc ;==>_Website

    [/autoit] [autoit][/autoit] [autoit]

    ; Show a menu in a given GUI window which belongs to a given GUI ctrl
    Func ShowMenu($hWnd, $CtrlID, $nContextID)
    Local $arPos, $x, $y
    Local $hMenu = GUICtrlGetHandle($nContextID)

    [/autoit] [autoit][/autoit] [autoit]

    $arPos = ControlGetPos($hWnd, "", $CtrlID)

    [/autoit] [autoit][/autoit] [autoit]

    $x = $arPos[0]
    $y = $arPos[1] + $arPos[3]

    [/autoit] [autoit][/autoit] [autoit]

    ClientToScreen($hWnd, $x, $y)
    TrackPopupMenu($hWnd, $hMenu, $x, $y)
    EndFunc ;==>ShowMenu

    [/autoit] [autoit][/autoit] [autoit]

    ; Convert the client (GUI) coordinates to screen (desktop) coordinates
    Func ClientToScreen($hWnd, ByRef $x, ByRef $y)
    Local $stPoint = DllStructCreate("int;int")

    [/autoit] [autoit][/autoit] [autoit]

    DllStructSetData($stPoint, 1, $x)
    DllStructSetData($stPoint, 2, $y)

    [/autoit] [autoit][/autoit] [autoit]

    DllCall("user32.dll", "int", "ClientToScreen", "hwnd", $hWnd, "ptr", DllStructGetPtr($stPoint))

    [/autoit] [autoit][/autoit] [autoit]

    $x = DllStructGetData($stPoint, 1)
    $y = DllStructGetData($stPoint, 2)
    ; release Struct not really needed as it is a local
    $stPoint = 0
    EndFunc ;==>ClientToScreen

    [/autoit] [autoit][/autoit] [autoit]

    ; Show at the given coordinates (x, y) the popup menu (hMenu) which belongs to a given GUI window (hWnd)
    Func TrackPopupMenu($hWnd, $hMenu, $x, $y)
    DllCall("user32.dll", "int", "TrackPopupMenuEx", "hwnd", $hMenu, "int", 0, "int", $x, "int", $y, "hwnd", $hWnd, "ptr", 0)
    EndFunc ;==>TrackPopupMenu

    [/autoit] [autoit][/autoit] [autoit][/autoit]

    mfg (Auto)Bert

    Dateien

    PersonalizedGUI.zip 985,18 kB – 366 Downloads
  • kurz stopen ( GUIRegisterMsg($WM_COMMAND, 'WM_COMMAND') )

    • autoBert
    • 22. Oktober 2009 um 02:40

    Hallo kleiner27,

    Zitat

    Ich habe ein code der auf einmal sehr viel berechnet der läuft mit GUIRegisterMsg($WM_COMMAND, 'WM_COMMAND') aber wenn ich im code eine andere func aufrufe die auch eine mänge berechnet und anzeigt dauert es ziemlich lage bis er das beweltigt hat!
    durch GUIRegisterMsg($WM_COMMAND, 'WM_COMMAND') werden soweit ich verstanden habe alles andere pausiert darum meine frage????

    Ja, die registrierte Funktion wird zu Ende ausgeführt und erst danach die anderen Botschaften der Reihe nach abgearbeitet. Du kannst evtl. zu Beginn von Zeitaufwendigen Funktionen mit GUIRegisterMsg ( msgID, "" ) die MSG deRegistrieren, siehe Hilfe z GuiRegisterMsg.

    Als Tip:

    Zitat

    "Auszug aus der Hilfe zu GuiRegisterMsg" Warnung: Das Blockieren von laufenden Benutzerfunktionen, die Fensternachrichten verwenden (z.B. mit Befehlen wie "Msgbox()"), kann zu unerwartetem Verhalten führen. So schnell wie möglich sollte dann die Rückkehr zum System stattfinden !!!

    Du solltest also für MsgBox und InputBox stets den TimeOut-Parameter verwenden, damit das System nicht blockiert wird.

    Schau dir auch die folgenden Threads an:
    [ offen ] Fragen zu GUIRegisterMsg
    [ offen ] Kann mir mal jemand erklären was GUIRegisterMsg bewirk?, hife kapier ich nicht:-(

    mfg (Auto)Bert

  • Wie email mit Maus hovern und mittels Tastendruck in Variable speichern?

    • autoBert
    • 21. Oktober 2009 um 23:48

    Hallo 32vroni,

    mit dem Fuchs kenne ich mich nicht aus, aber bei IE würde ich mit InetGet die Komplette Seite herunterladen, und dann mit den Funktionen zur Stringmanipulation weiterarbeiten.

    mfg (Auto)Bert

  • Zähle Vorkommen in Array

    • autoBert
    • 21. Oktober 2009 um 23:33

    Hallo Raupi,

    da die Routinen ja bis auf den Teil in dem du die gefundenen Werte der größten Zahl löschst identisch sind, ist der Unterschied zwangsläufig die Zeiz die fürs Löschen benötigt wird. Aber diese 0,4 -0,6 Sekunden dürften wohl nicht stören,

    mfg (Auto)Bert

  • Wie email mit Maus hovern und mittels Tastendruck in Variable speichern?

    • autoBert
    • 21. Oktober 2009 um 22:45

    Hallo 32vroni,

    poste doch dein Skript (soweit du gekommen bist) und am besten stellst du auch gleich denLink auf die Webseite mit dazu.

    mfg (Auto)Bert

  • Zähle Vorkommen in Array

    • autoBert
    • 21. Oktober 2009 um 22:24

    Hallo Raupi ,

    es geht auch ohne _ArrayDelete, dadurch etwas kürzer und minimaal schneller:

    Spoiler anzeigen
    [autoit]

    #include <array.au3>
    Dim $array[10000]
    dim $max[2][2]
    $array[0] = 9999
    For $i = 1 To 9999
    $array[$i] = Random(1,999,1)
    Next
    _ArraySort($array,0,1,9999)
    _ArrayDisplay($array,"Jetzt befindet sich die höchste Zahl am Ende BITTE Zur Kontrolle kopieren!!!!")
    $max[0][0] = $array[$array[0]] ;die absolute größte Zahl
    $max[0][1] = _ArrayFindAll($array,$max[0][0],1,9999) ;ein Array mit ALLEN gefundenen Werten der größten Zahl!!!!!!!
    $max[1][0] = $array[$array[0] - UBound($max[0][1])] ;die 2 größte Zahl
    $max[1][1] = _ArrayFindAll($array,$max[1][0],1,9999) ;ein Array mit ALLEN gefundenen größten Werten der 2. Zahl!!!!!!!
    ConsoleWrite($max[0][0] & " ist " & UBound($max[0][1]) & " mal im Array vorhanden" & @crlf)
    ConsoleWrite($max[1][0] & " ist " & UBound($max[1][1]) & " mal im Array vorhanden" & @crlf)

    [/autoit]

    mfg (Auto)Bert

  • Listview Items durchblättern

    • autoBert
    • 21. Oktober 2009 um 18:16

    Hallo EP2,

    eine der Möglichkeiten:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #Include <GuiListView.au3>
    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Dim $array[3][2]
    $array[0][0] = "a"
    $array[0][1] = "a2"
    $array[1][0] = "b"
    $array[1][1] = "b2"
    $array[2][0] = "c"
    $array[2][1] = "c2"
    _ArrayDisplay( $array, "Whole array" )

    [/autoit] [autoit][/autoit] [autoit]

    GUICreate("bla",700,700)
    GUISetState (@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    $listview = GUICtrlCreateListView ("Spalte1|Spalte2",20,30,200,150)
    For $i = 0 To UBound($array) -1
    $item=GUICtrlCreateListViewItem($array[$i][0] & "|" & $array[$i][1],$listview)
    GUICtrlSetData(-1,$item)
    Next
    $button = GUICtrlCreateButton ("next element",75,500,70,20)
    Do
    $msg = GUIGetMsg ()
    Select
    Case $msg = $button
    For $i = 1 to _GUICtrlListView_GetItemCount($listview)
    $a = _GUICtrlListView_GetItemTextArray($listview,$i-1)
    for $j = 1 to $a[0]
    MsgBox(0,"Item : " & $i+1 & "Col : " & $j,$a[$j])
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    ; $a=GUICtrlRead(GUICtrlRead($listview)) ;<========= GuiCtrlRead ergibt die ID des aktuell slecktierte Items
    ; MsgBox(0,"ausgabe",$a)
    EndSelect
    Until $msg = $GUI_EVENT_CLOSE

    [/autoit]
  • Zähle Vorkommen in Array

    • autoBert
    • 21. Oktober 2009 um 17:53

    Hallo dschihejns,

    schau dir die Funktionen _ArrayMax, _ArraySort und _ArrayFindAll in der Hilfe an,

    mfg (Auto)Bert

  • BUG??? GUICtrlSetData mit For To Step

    • autoBert
    • 21. Oktober 2009 um 17:48

    Hallo opaed,
    noch eine Möglichkeit:

    Spoiler anzeigen
    [autoit]

    #include <ComboConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 207, 177, 192, 124)
    $Combo1 = GUICtrlCreateCombo("0.10", 65, 42, 73, 25)
    for $data = 0.2 to 9.9 Step 0.1
    GUICtrlSetData(-1, round($data,1))
    Next
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    EndSwitch
    WEnd

    [/autoit]

    mfg (Auto)Bert

  • Checkbox auf check prüfen

    • autoBert
    • 21. Oktober 2009 um 17:19

    Hallo H1tsugaya,

    hier eine Lösungsvarianze mit Arrays

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <file.au3>
    #include <array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global $aArray
    Global $raum ; für Zählvariable
    Global $htab ; für ID des Tabcontrols
    Global $htabRaum[10] ; Array für IDs der TabItems
    Global $hchkPC[10][30] ; Array für IDs der Checkboxen für maximal 9 Räume à 29 PC
    GUISetBkColor(0x00E0FFFF)
    GUISetFont(9, 300)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUICreate("Wake on lan", 450, 415)
    Global $hbtnWakeUp = GUICtrlCreateButton("Auf&wecken", 340, 390, 100)
    $htab = GUICtrlCreateTab(10, 10, 435, 380)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $raum = 1 To 6
    Switch $raum
    Case 1
    $FileToRead = @ScriptDir & '\Raum 3090.txt'
    $htabRaum[$raum] = GUICtrlCreateTabItem("Raum 3090")
    Case 2
    $FileToRead = @ScriptDir & '\Raum 4037.txt'
    $htabRaum[$raum] = GUICtrlCreateTabItem("Raum 4037")
    Case 3
    $FileToRead = @ScriptDir & '\Raum 4043.txt'
    $htabRaum[$raum] = GUICtrlCreateTabItem("Raum 4043")
    Case 4
    $FileToRead = @ScriptDir & '\Raum 4044.txt'
    $htabRaum[$raum] = GUICtrlCreateTabItem("Raum 4044")
    Case 5
    $FileToRead = @ScriptDir & '\Raum 5017.txt'
    $htabRaum[$raum] = GUICtrlCreateTabItem("Raum 5017")
    Case 6
    $FileToRead = @ScriptDir & '\Raum 5018.txt'
    $htabRaum[$raum] = GUICtrlCreateTabItem("Raum 5018")
    EndSwitch
    If _FileReadToArray($FileToRead,$aArray) Then

    [/autoit] [autoit][/autoit] [autoit]

    For $pc = 1 To $aArray[0]
    ConsoleWrite($raum & " PC: " & $pc & @CRLF)
    $ausgabe = StringSplit($aArray[$pc], ";" & @CRLF)
    $i = Int(($pc + 9) / 10) * 80
    $j = Mod(($pc + 9), 10) * 25 + 80
    $hchkPC[$raum][$pc] = GUICtrlCreateCheckbox("" & $ausgabe[1], $i, $j)
    Next
    EndIf
    Next
    GUICtrlCreateTabItem("")

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit
    case $msg = $hbtnWakeUp
    for $raum = 1 to 6
    For $pc = 1 to 29
    if BITAND(GUICtrlRead($hchkPC[$raum][$pc]),$GUI_CHECKED) = $GUI_CHECKED Then
    ConsoleWrite("Aufwachen PC " & $pc & " in Raum " & @CRLF);mit WOL-Befehl ersetzen
    EndIf
    Next
    Next
    EndSelect
    WEnd

    [/autoit]

    schau dir die benutzten Funktionen in der Hilfe an

  • Checkbox auf check prüfen

    • autoBert
    • 21. Oktober 2009 um 15:21

    Hallo H1tsugaya,

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <file.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Dim $rechts = 25
    Dim $rechts1 = 25
    Dim $Start = 35
    Dim $Start1 = 35
    Dim $Start2 = 35
    Dim $Start3 = 35
    Dim $Start4 = 35
    Dim $Start5 = 35
    Dim $Start6 = -290
    Dim $Zaehler = 25
    Dim $aArray
    Dim $checkbox
    GUISetBkColor(0x00E0FFFF)
    GUISetFont(9, 300)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUICreate("Wake on lan", 450, 415)
    $button_Aufwecken = GUICtrlCreateButton("Aufwecken", 340, 390, 100)
    $tab = GUICtrlCreateTab(10, 10, 435, 380)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    $tab0 = GUICtrlCreateTabItem("Raum 3090")

    [/autoit] [autoit][/autoit] [autoit]

    If Not _FileReadToArray(@ScriptDir & '\Raum 3090.txt', $aArray) Then

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $t = 1 To UBound($aArray)
    $ausgabe = StringSplit($aArray[$t], ";")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateCheckbox("" & $ausgabe[1], $rechts, $Start)
    $Start = $Start + $Zaehler

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Next

    [/autoit] [autoit][/autoit] [autoit]

    EndIf
    $tab1 = GUICtrlCreateTabItem("Raum 4037")
    If Not _FileReadToArray(@ScriptDir & '\Raum 4037.txt', $aArray) Then

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $t = 1 To UBound($aArray)
    $ausgabe = StringSplit($aArray[$t], ";")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateCheckbox("" & $ausgabe[1], $rechts, $Start1)
    $Start1 = $Start1 + $Zaehler

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Next
    EndIf
    $tab2 = GUICtrlCreateTabItem("Raum 4043")
    If Not _FileReadToArray(@ScriptDir & '\Raum 4043.txt', $aArray) Then

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $t = 1 To UBound($aArray)
    $ausgabe = StringSplit($aArray[$t], ";")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateCheckbox("" & $ausgabe[1], $rechts, $Start2)

    [/autoit] [autoit][/autoit] [autoit]

    $Start2 = $Start2 + $Zaehler
    If $Start2 > 380 Then $rechts = 100
    If $rechts = 100 Then $Start2 = $Start6
    $Start6 = $Start6 + $Zaehler

    [/autoit] [autoit][/autoit] [autoit]

    Next
    EndIf
    $tab3 = GUICtrlCreateTabItem("Raum 4044")
    If Not _FileReadToArray(@ScriptDir & '\Raum 4044.txt', $aArray) Then

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $t = 1 To UBound($aArray)
    $ausgabe = StringSplit($aArray[$t], ";")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateCheckbox("" & $ausgabe[1], $rechts1, $Start3)
    $Start3 = $Start3 + $Zaehler

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Next
    EndIf
    $tab4 = GUICtrlCreateTabItem("Raum 5017")
    If Not _FileReadToArray(@ScriptDir & '\Raum 5017.txt', $aArray) Then

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $t = 1 To UBound($aArray)
    $ausgabe = StringSplit($aArray[$t], ";")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateCheckbox("" & $ausgabe[1], $rechts1, $Start4)
    $Start4 = $Start4 + $Zaehler

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Next
    EndIf
    $tab5 = GUICtrlCreateTabItem("Raum 5018")
    If Not _FileReadToArray(@ScriptDir & '\Raum 5018.txt', $aArray) Then

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    For $t = 1 To UBound($aArray)
    $ausgabe = StringSplit($aArray[$t], ";")

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateCheckbox("" & $ausgabe[1], $rechts1, $Start5)
    $Start5 = $Start5 + $Zaehler

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Next
    EndIf
    GUICtrlCreateTabItem("")

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    EndSelect

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    WEnd

    [/autoit]


    Du solltest eine der Textdateien hochladen, damit man das Skript weiterentwickeln und auch testen kann,

    mfg (Auto)Bert

  • Or Probleme...

    • autoBert
    • 21. Oktober 2009 um 15:02

    Hallo subzero007,

    so sollte es funktionieren:

    [autoit]


    If (FileExists("\\server\share\log1\" & $ListViewText & ".log")) Or (FileExists("\\server\share\log2\" & $ListViewText & ".log")) Then
    $FileToOpen = ""
    if FileExists("\\server\share\log1\" & $ListViewText & ".log") then $FileToOpen = "\\server\share\log1\" & $ListViewText & ".log"
    if ($FileToOpen = "") and FileExists("\\server\share\log2\" & $ListViewText & ".log") then $FileToOpen = "\\server\share\log2\" & $ListViewText & ".log"
    if $FileToOpen <> "" then $file = FileOpen($FileToOpen)
    Else
    GUICtrlCreateListViewItem($temp[17] & "||" & $Text & "|" & $temp[7] & "|" & $IP & "|" & $STATus, $Liste)
    EndIf

    [/autoit]

    mfg (Auto)Bert

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™