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

  • Listview Design: Transparenz möglich?

    • autoBert
    • 21. September 2009 um 23:55

    Hallo nuts,

    hier eine Möglichkeit die das Problem einigermassen löst:

    Spoiler anzeigen
    [autoit]

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

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

    AutoIt Version : 3.3.0.0
    Author : AutoBert
    Basics and Picures : unknown Author on autoitscript.com

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

    Script Function : Template AutoIt script Demonstration of transparent Gui and Background Image
    #ce ----------------------------------------------------------------------------

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

    ; Script Start - Add your code below here
    #include <GUIConstants.au3>
    #include <WindowsConstants.au3>
    #include <ProgressConstants.au3>
    #include <Constants.au3>
    #include <StaticConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <TreeViewConstants.au3>
    #include <GuiImageList.au3>
    #include <GuiTreeView.au3>
    #include <EditConstants.au3>
    #include <StaticConstants.au3>
    #include<ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiTreeView.au3>
    #include <GuiListView.au3>
    #include <GuiTab.au3>
    #include <TreeViewConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiStatusBar.au3>
    #include <SQLite.au3>
    #include <SQLite.dll.au3>
    #include <Misc.au3>

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

    Global $hedtSuch, $hgrpMember, $hedtMember[12], $hedtAnschrift[4] ;Eingabefelder, TABS, List- und TreeViews
    Global $hedtAnrede[2], $hedtFunktion, $hedtBei, $hbtnHP, $hedtHomePage
    Global $hlstvwDaten, $hlstvwKom ;ListViews "wichtige Daten" und "Kommunikationsmöglichkeiten"
    Global $htabMain, $htabItemNotiz ;Tabs für Notizen und Archiv
    Global $hedtBem, $htabItemArchiv, $hlstvwArchiv
    Global $htreevwMain
    Global $hsplitter1, $hsplitter2 ;evtl. fürs Resizing
    ;Global $dummy
    Global $iAdrNr ;aktuell angezeigte Adresse für Verknüpfung Master- Detail

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

    Opt("TrayMenuMode", 1)
    HotKeySet("{F6}", "hide")
    Local $hItem[6], $hImage, $hRandomImage, $hTreeView
    Local $iStyle = BitOR($TVS_EDITLABELS, $TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, $TVS_DISABLEDRAGDROP, $TVS_SHOWSELALWAYS, $TVS_CHECKBOXES)
    $hfrmMain = GUICreate("TRANS", 1024, 600, -1, -1, $WS_POPUP, $WS_EX_CLIENTEDGE)
    GUISetState(@SW_HIDE, $hfrmMain)
    ;$hjpgBckgrnd = GUICtrlCreatePic("bin\bg" & Random(1, 8, 1) & ".jpg", 0, 0, 1024, 600) ;change bgX.jpg with your jpeg
    $hjpgBckgrnd = GUICtrlCreatePic("bin\bg5.jpg", 0, 0, 1024, 600) ;change bgX.jpg with your jpeg
    $hpbarPercent = GUICtrlCreateProgress(0, 570, 1024, 30, $PBS_SMOOTH)
    DllCall("UxTheme.dll", "int", "SetWindowTheme", "hwnd", GUICtrlGetHandle(-1), "wstr", 0, "wstr", 0)
    GUICtrlSetState(-1, $GUI_DISABLE)
    ConsoleWrite("war da")
    $hfrmChild = GUICreate("GUI", 1024, 600, -1, -1, $WS_POPUP, $WS_EX_MDICHILD, $hfrmMain)
    GUISetFont(-1, 10, 800)
    WinSetTrans("GUI", "", 0)
    WinSetOnTop("GUI", "", 1)
    GUISetState(@SW_SHOW, $hfrmChild)
    $close = GUICtrlCreateIcon("bin\close.ico", -8, 1024 - 18, 5, 16, 16)
    $hlblPercent = GUICtrlCreateLabel("0", 492, 570, 60, 30)
    GUICtrlSetFont(-1, 10, 800)
    #cs
    $hTreeView = GUICtrlCreateTreeView(2, 120, 396, 268, $iStyle, $WS_EX_CLIENTEDGE)
    GUICtrlSetBkColor($hTreeView, 0xFFFFFF)
    GUICtrlSetFont(-1, 10, 800)
    $hImage = _GUIImageList_Create(16, 16, 5, 3)
    _GUIImageList_AddIcon($hImage, "shell32.dll", 110)
    _GUIImageList_AddIcon($hImage, "shell32.dll", 131)
    _GUIImageList_AddIcon($hImage, "shell32.dll", 135)
    _GUIImageList_AddIcon($hImage, "shell32.dll", 136)
    _GUIImageList_AddIcon($hImage, "shell32.dll", 137)
    _GUIImageList_AddIcon($hImage, "shell32.dll", 138)
    _GUICtrlTreeView_SetNormalImageList($hTreeView, $hImage)

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

    _GUICtrlTreeView_BeginUpdate($hTreeView)
    For $x = 0 To _GUIImageList_GetImageCount($hImage) - 1
    $hItem[$x] = _GUICtrlTreeView_Add($hTreeView, 0, StringFormat("[%02d] New Item", $x + 1), $x, $x)
    For $y = 0 To _GUIImageList_GetImageCount($hImage) - 1
    $hItem[$y] = _GUICtrlTreeView_AddChild($hTreeView, $hItem[$x], StringFormat("[%02d] Child Item", $x + 1), $x, $x)
    Next
    Next
    _GUICtrlTreeView_EndUpdate($hTreeView)
    #ce
    GUICtrlCreateLabel("&Kurzbezeichnung", 8, 87, 180, 26)
    GUICtrlSetFont(-1, 14, 800)
    GUICtrlSetOnEvent(-1, '_goToSuch')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    $hedtSuch = GUICtrlCreateInput("", 190, 87, 255, 26, $ES_UPPERCASE)
    GUICtrlSetFont(-1, 14, 800)
    ;GUICtrlSetState(-1, $GUI_FOCUS)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    GUICtrlSetLimit(-1, 25) ; um die Eingabe auf 25 Zeichen zu begrenzen

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

    $hgrpMember = GUICtrlCreateGroup("gehört zu &Gruppen:", 452, 77, 342, 40) ; Gruppe MEMBER beginnen
    GUICtrlSetOnEvent(-1, '_goToMember')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    For $i = 0 To 11
    $hedtMember[$i] = GUICtrlCreateInput("", 457 + $i * 28, 93, 24, 18, $ES_NUMBER)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKRIGHT + $GUI_DOCKTOP)
    GUICtrlSetLimit(-1, 3) ; um die Eingabe auf 3 Zeichen zu begrenzen
    Next
    GUICtrlCreateGroup("", -99, -99, 1, 1) ; Gruppe MEMBER schliessen

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

    GUICtrlCreateGroup("&Anschrift:", 2, 115, 265, 100) ; Gruppe ANSCHRIFT beginnen
    GUICtrlSetOnEvent(-1, '_goToAdress')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    For $i = 0 To 3
    Select
    Case $i = 0
    $aText = "Name 1: "
    Case $i = 1
    $aText = "Name 2: "
    Case $i = 2
    $aText = "Strasse: "
    Case $i = 3
    $aText = "PLZ/Ort: "
    EndSelect
    GUICtrlCreateLabel($aText, 8, 130 + $i * 20, 70)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    $hedtAnschrift[$i] = GUICtrlCreateInput("", 75, 130 + $i * 20, 190, 18)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    GUICtrlSetLimit(-1, 30) ; um die Eingabe auf 30 Zeichen zu begrenzen
    Next
    GUICtrlCreateGroup("", -99, -99, 1, 1) ; Gruppe ANSCHRIFT schliessen

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

    GUICtrlCreateLabel("Funktion:", 8, 225, 70)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    $hedtFunktion = GUICtrlCreateInput("", 75, 225, 190, 18)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    GUICtrlSetLimit(-1, 30) ; um die Eingabe auf 30 Zeichen zu begrenzen
    GUICtrlCreateLabel("bei:", 8, 245, 70)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    $hedtBei = GUICtrlCreateInput("", 75, 245, 190, 18)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    GUICtrlSetLimit(-1, 30) ; um die Eingabe auf 30 Zeichen zu begrenzen

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

    GUICtrlCreateLabel("Anrede &1:", 8, 270, 70)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetOnEvent(-1, '_goToAnrede1')
    ;GUICtrlSetColor(-1,
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    $hedtAnrede[0] = GUICtrlCreateInput("", 75, 270, 190, 18)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    GUICtrlSetLimit(-1, 30) ; um die Eingabe auf 30 Zeichen zu begrenzen
    GUICtrlCreateLabel("Anrede &2:", 8, 290, 70)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetOnEvent(-1, '_goToAnrede2')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    $hedtAnrede[1] = GUICtrlCreateInput("", 75, 290, 190, 18)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    GUICtrlSetLimit(-1, 30) ; um die Eingabe auf 30 Zeichen zu begrenzen

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

    ;GUICtrlCreateLabel("HomePage:", 8, 315)
    $hbtnHP = GUICtrlCreateButton('Home&Page', 4, 315, 70, 20, BitOR($WS_CLIPSIBLINGS, $BS_BOTTOM))
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetOnEvent(-1, '_goToHomePage')
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    $hedtHomePage = GUICtrlCreateInput("", 75, 315, 190, 18)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKSIZE + $GUI_DOCKLEFT + $GUI_DOCKTOP)
    GUICtrlSetLimit(-1, 64) ; um die Eingabe auf 64 Zeichen zu begrenzen

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

    ;$hsplitter1 = GUICtrlCreateGraphic(270, 125, 4, 205, $SS_BLACKRECT)
    ;GUICtrlSetResizing(-1, $GUI_DOCKLEFT +$GUI_DOCKSIZE + $GUI_DOCKTOP)

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

    $hlstvwDaten = GUICtrlCreateListView("Ereignis | Datum | Bemerkung", 280, 120, 165, 105)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKHEIGHT + $GUI_DOCKLEFT + $GUI_DOCKTOP + $GUI_DOCKRIGHT)
    GUICtrlCreateListViewItem("Geburt|29.02.1992", $hlstvwDaten)
    GUICtrlCreateListViewItem("Eintritt JRK|01.01.1997", $hlstvwDaten)
    $hlstvwKom = GUICtrlCreateListView("Kom-Art |Nummer", 280, 230, 165, 105)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKHEIGHT + $GUI_DOCKLEFT + $GUI_DOCKTOP + $GUI_DOCKRIGHT)
    ; GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP +$GUI_DOCKRIGHT)
    GUICtrlCreateListViewItem("Festnetz|08741/47118899", $hlstvwKom)
    GUICtrlCreateListViewItem("Mobil|0172/47118899", $hlstvwKom)
    GUICtrlCreateListViewItem("Firma|08841/0815", $hlstvwKom)
    GUICtrlCreateListViewItem("Eltern|08741/18899", $hlstvwKom)
    GUICtrlCreateListViewItem("EMAIL|NoReply@NoMail.please", $hlstvwKom)
    GUICtrlCreateListViewItem("EMAIL 2|Urgent@HotMail.Net", $hlstvwKom)

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

    $hsplitter2 = GUICtrlCreateGraphic(2, 338, 448, 4, $SS_BLACKRECT)
    GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKHEIGHT)

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

    $htabMain = GUICtrlCreateTab(2, 345, 450, 127)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKBORDERS)
    $htabItemNotiz = GUICtrlCreateTabItem("Bemerkungen")
    GUICtrlSetFont(-1, 10, 800)
    $hedtBem = GUICtrlCreateInput("Erste Zeile" & @CRLF, 2, 367, 447, 102, $ES_AUTOVSCROLL + $WS_VSCROLL + $ES_MULTILINE + $ES_WANTRETURN)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKBORDERS)
    $htabItemArchiv = GUICtrlCreateTabItem("Briefe EMails etc.")
    GUICtrlSetFont(-1, 10, 800)
    $hlstvwArchiv = GUICtrlCreateListView("Art |Datum |Anlass |Serienfelder", 2, 367, 447, 102)
    GUICtrlSetFont(-1, 10, 800)
    GUICtrlSetResizing(-1, $GUI_DOCKHEIGHT + $GUI_DOCKLEFT + $GUI_DOCKTOP + $GUI_DOCKRIGHT)
    ; GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP +$GUI_DOCKRIGHT)
    GUICtrlCreateTabItem("")
    $htreevwMain = GUICtrlCreateTreeView(452, 120, 345, 345, $GUI_SS_DEFAULT_TREEVIEW + $TVS_CHECKBOXES, $WS_EX_CLIENTEDGE)
    GUICtrlSetFont(-1, 10, 800)
    ;GUISetOnEvent($GUI_EVENT_PRIMARYDOWN, '_CheckForChangesInTreeMain')

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

    ;GUICtrlSetResizing(-1, $GUI_DOCKBORDERS)
    GUICtrlSetResizing(-1, $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM + $GUI_DOCKWIDTH)

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

    ;------------------------MENU FILE
    $filemenu = GUICtrlCreateLabel("&Datei", 3, 4, 45, 15)
    GUICtrlSetFont(-1, 10, 800)
    $filesDummy = GUICtrlCreateDummy()
    $fileContext = GUICtrlCreateContextMenu($filesDummy)
    $fileopen = GUICtrlCreateMenuItem("&Hintergrund", $fileContext)
    GUICtrlCreateMenuItem("", $fileContext)
    $OptionsExit = GUICtrlCreateMenuItem("Be&enden", $fileContext)

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

    ;--------------------Menu EDIT
    $editmenu = GUICtrlCreateLabel("&Bearbeiten", 53, 4, 75, 15)
    GUICtrlSetFont(-1, 10, 800)
    $editDummy = GUICtrlCreateDummy()
    $editContext = GUICtrlCreateContextMenu($editDummy)
    $editcopy = GUICtrlCreateMenuItem("&Kopieren", $editDummy)
    $editpaste = GUICtrlCreateMenuItem("&Einfügen", $editDummy)

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

    ;---------------------MENU HELP
    $helpmenu = GUICtrlCreateLabel("&Hilfe", 138, 4, 45, 15)
    GUICtrlSetFont(-1, 10, 800)
    $HelpDummy = GUICtrlCreateDummy()
    $HelpContext = GUICtrlCreateContextMenu($HelpDummy)
    $HelpWWW = GUICtrlCreateMenuItem("Website", $HelpContext)
    GUICtrlCreateMenuItem("", $HelpContext)
    $HelpAbout = GUICtrlCreateMenuItem("&Hilfe", $HelpContext)
    $helpregister = GUICtrlCreateMenuItem("&Lizenz", $HelpContext)

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

    ;-------------------LINE
    $line = GUICtrlCreateGraphic(0, 24, 1024, 2)
    GUICtrlSetGraphic($line, $GUI_GR_LINE, 0, 0)
    GUICtrlSetColor(-1, 0)
    ;-----------------ICONS
    $hicoFile = GUICtrlCreateIcon("shell32.dll", -100, 0, 30, 32, 32, $SS_SUNKEN)
    GUICtrlCreateIcon("shell32.dll", -4, 32, 30, 32, 32, $SS_SUNKEN)
    GUICtrlCreateIcon("shell32.dll", -7, 64, 30, 32, 32, $SS_SUNKEN)
    $hsldrPercent = GUICtrlCreateSlider(10, 540, 158, 45)
    GUICtrlSetLimit($hsldrPercent, 100, 40)
    GUICtrlSetFont(-1, 10, 800)
    ;WinSetOnTop("TRANS","",1)
    GUISetState(@SW_SHOW, $hfrmMain)
    GUISetState(@SW_SHOW, $hfrmChild)

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

    #cs
    for $iPercent= 0 to 100
    sleep(1)
    WinSetTrans ("GUI","",$a*2.55)
    GUICtrlSetData($hpbarPercent, $iPercent)
    GUICtrlSetData($w, $a& " %")
    next
    for $iPercent= 100 to 90 Step -1
    sleep(5)
    WinSetTrans ("GUI","",$a*2.55)
    GUICtrlSetData($hpbarPercent, $iPercent)
    GUICtrlSetData($w, $a& " %")
    next
    #ce
    ;GUICtrlDelete($w) ;Prozentanzeige

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

    GUICtrlSetData($hsldrPercent, 70)
    WinSetTrans("GUI", "", GUICtrlRead($hsldrPercent) * 2.55)

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

    GUICtrlSetState($hedtSuch, $GUI_FOCUS)

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

    While 1
    Sleep(20)
    $msg = GUIGetMsg()
    If $msg = $GUI_EVENT_CLOSE Or $msg = $OptionsExit Or $msg = $close Then
    #cs
    for $iPercent= $iPercent to 100
    sleep(1)
    WinSetTrans ("GUI","",$iPercent*2.55)
    GUICtrlSetData($hpbarPercent, $iPercent)
    GUICtrlSetData($hlblPercent, $iPercent & " %")
    next
    #ce
    GUISetState(@SW_HIDE, $hfrmMain)
    Sleep(3)
    ;GUISetState(@SW_HIDE,$hfrmChild)
    GUIDelete($hfrmChild)
    GUIDelete($hfrmMain)
    ExitLoop
    EndIf
    ;If $msg = $close Then ExitLoop
    If $msg = $filemenu Or $msg = $hicoFile Then ShowMenu($hfrmChild, $msg, $fileContext)
    If $msg = $helpregister Then InputBox("License", "Type your license key", "", " ", Default, Default, Default, Default, Default, $hfrmChild)
    If $msg = $helpmenu Then ShowMenu($hfrmChild, $msg, $HelpContext)
    If $msg = $editmenu Then ShowMenu($hfrmChild, $msg, $editContext)
    If $msg = $fileopen Then
    $sjpgBckgrnd = FileOpenDialog("Select a file", @ScriptDir & "\bin", "Images (*.jpg)", 1, "", $hfrmChild)
    GUICtrlSetImage($hjpgBckgrnd, $sjpgBckgrnd)
    EndIf

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

    If $msg = $HelpAbout Then MsgBox(64, "Help", "F6 Hide/Show Gui" & @CRLF & "File/Background to change background", Default, $hfrmChild)
    $iPercent = GUICtrlRead($hsldrPercent) ; Ließt den aktuellen wert des Sliders aus.
    WinSetTrans("GUI", "", $iPercent * 2.55)
    GUICtrlSetData($hpbarPercent, $iPercent)
    GUICtrlSetData($hlblPercent, $iPercent & " %")
    WEnd
    ; -------------- func
    Func hide()
    GUISetState(@SW_HIDE, $hfrmMain)
    GUISetState(@SW_HIDE, $hfrmChild)
    HotKeySet("{F6}", "show")
    EndFunc ;==>hide

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

    Func show()
    GUISetState(@SW_SHOW, $hfrmMain)
    GUISetState(@SW_SHOW, $hfrmChild)
    HotKeySet("{F6}", "hide")
    EndFunc ;==>show

    [/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][/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][/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]

    Func _goToSuch()
    ;If $hfrmAkt = $hfrmMain Then
    GUICtrlSetState($hedtSuch, $GUI_FOCUS)
    EndFunc ;==>_goToSuch

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

    Func _goToMember()
    ;If $hfrmAkt = $hfrmMain Then
    GUICtrlSetState($hedtMember[0], $GUI_FOCUS)
    EndFunc ;==>_goToMember

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

    Func _goToAdress()
    ;If $hfrmAkt = $hfrmMain Then
    GUICtrlSetState($hedtAnschrift[0], $GUI_FOCUS)
    EndFunc ;==>_goToAdress

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

    Func _goToAnrede1()
    ;If $hfrmAkt = $hfrmMain Then
    GUICtrlSetState($hedtAnrede[0], $GUI_FOCUS)
    EndFunc ;==>_goToAnrede1

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

    Func _goToAnrede2()
    ;If $hfrmAkt = $hfrmMain Then
    GUICtrlSetState($hedtAnrede[1], $GUI_FOCUS)
    EndFunc ;==>_goToAnrede2

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

    Func _goToHomePage()
    ;If $hfrmAkt = $hfrmMain Then
    ;GUICtrlSetState($hedtHomePage, $GUI_FOCUS)
    ;hier Funktion einbauen damit automatisch die Homepage aufgerufen wird
    EndFunc ;==>_goToHomePage

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

    Func _selectTabConf()
    ;If $hfrmAkt = $hfrmConf Then GUICtrlSetState($htabItemGruppen, $GUI_FOCUS)
    EndFunc ;==>_selectTabConf

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

    Func _goToGruppen()
    ;If $hfrmAkt = $hfrmConf Then _GUICtrlTab_SetCurFocus($htabConf, 0)
    EndFunc ;==>_goToGruppen

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

    Func _goToDaten()
    ;If $hfrmAkt = $hfrmConf Then _GUICtrlTab_SetCurFocus($htabConf, 1)
    EndFunc ;==>_goToDaten

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

    Func _goToKom()
    ;If $hfrmAkt = $hfrmConf Then _GUICtrlTab_SetCurFocus($htabConf, 2)
    EndFunc ;==>_goToKom

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

    ; ----------------------------------------

    [/autoit]

    Hintergrundbilder: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Bei dieser Methode, gefunden vor längerer Zeit auf AutoItScript.com (Author mir leider unbekannt), wird eine 2. Gui über die Gui die das Hintergrundbild enthält gelegt, dadurch ist es möglich alle Controls (bisher noch keine Ausnahme gefunden) transparent zu machen. Leider nicht nur den Hintergrund, sondern auch den Text (Vordergrund). Probier einfach über den Slider mal verschiedene Trasparenzen aus und entscheide ob du mit diesem Kompromiss leben kannst,

    Edit: Screenshot angehängt: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.
    mfg (Auto)Bert

  • GUI-Fenster aktualisieren

    • autoBert
    • 21. September 2009 um 15:30

    Hallo SchrotterCh,

    meine Version unterscheidet sich von Andy 's Version hauptsächlich im Resizing, habe in meinem Skript auch noch die Höhe berücksichtigt.

    Wenn du nach jedem Control folgende Zeile einfügst (bei Andy Skript) bzw. austauscht (bei meinem Skript) ist die zu geringe Höhe der Cotrols behoben,

    [autoit]

    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))

    [/autoit]


    mfg (Auto)Bert

  • GUI-Fenster aktualisieren

    • autoBert
    • 21. September 2009 um 15:00

    Hallo SchrotterCh,

    hab dir auch eine Lösung gebastelt (weitgehend identisch mit Andy:(

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <Timers.au3>
    #include <Date.au3>
    #include <GuiStatusBar.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    ;HotKeySet ("{F5}", "_button")
    HotKeySet("{ESC}", "_exit")

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

    Opt("TrayAutoPause", 0)
    Opt("TrayIconDebug", 0)
    Opt("TrayMenuMode", 1)
    Opt("WinSearchChildren", 1)

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

    Global $Secs, $Mins, $Hour, $Time
    Global $hTime, $hDate, $hYDay, $hRSince, $hStatus ;<Variablen für Control-ID's

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

    $hGui = GUICreate("GUI", -1, -1, -1, -1, $WS_MAXIMIZEBOX + $WS_MINIMIZEBOX + $WS_SIZEBOX + $WS_SYSMENU + $WS_CAPTION)
    GUISetCursor(3)
    GUISetBkColor(0x000000)
    GUICtrlCreateLabel("Uhrzeit:", 4, 4, 40, 13)
    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xFFFF00)
    $hTime = GUICtrlCreateLabel("", 44, 4, 50, 13)
    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlCreateLabel("Datum:", 104, 4, 40, 13)
    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xFFFF00)
    $hDate = GUICtrlCreateLabel("", 144, 4, 60, 13)
    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlCreateLabel("Jahrestag:", 214, 4, 60, 13)
    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xFFFF00)
    $hYDay = GUICtrlCreateLabel("", 274, 4, 20, 13)
    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlCreateLabel("Laufzeit:", 304, 4, 40, 13)
    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xFFFF00)
    $hRSince = GUICtrlCreateLabel("", 350, 4, 150, 13)
    GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKWIDTH, $GUI_DOCKHEIGHT))
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $hStatus = _GUICtrlStatusBar_Create($hGui) ;<=======================
    _GUICtrlStatusBar_GetHeight($hGui)
    GUISetState(@SW_SHOW, $hGui)

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

    GUIRegisterMsg($WM_SIZE, "WM_SIZE")

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

    $iconmenu0001 = TrayCreateItem("GUI-Fenster schließen")
    $iconmenu0002 = TrayCreateItem("GUI-Fenster öffnen")
    TrayCreateItem("")
    $iconmenu0003 = TrayCreateItem("Information")
    $iconmenu0004 = TrayCreateItem("Information")
    $iconmenu0005 = TrayCreateItem("Information")
    $iconmenu0006 = TrayCreateItem("Information")
    TrayCreateItem("")
    $iconmenu0007 = TrayCreateItem("Info")
    TrayCreateItem("")
    $iconmenu0008 = TrayCreateItem("Pause")
    $iconmenu0009 = TrayCreateItem("Exit")

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

    $0001_0001 = _Timer_SetTimer($hGui, 1000, "_information0001", -1)
    $0002_0001 = _NowCalc()

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

    ;Send ("{F5}")

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

    ;Func _button ()
    While True
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    #cs
    $tmsg = TrayGetMsg()
    Switch $tmsg
    Case $iconmenu0001
    MsgBox (64, "Fehler", "Befehl nicht verfügbar")
    Case $iconmenu0002
    MsgBox (64, "Fehler", "Befehl nicht verfügbar")
    Case $iconmenu0003
    MsgBox (64, "Fehler", "Befehl nicht verfügbar")
    Case $iconmenu0004
    MsgBox (64, "Fehler", "Befehl nicht verfügbar")
    Case $iconmenu0005
    MsgBox (64, "Fehler", "Befehl nicht verfügbar")
    Case $iconmenu0006
    MsgBox (64, "Fehler", "Befehl nicht verfügbar")
    Case $iconmenu0007
    MsgBox (64, "Fehler", "Befehl nicht verfügbar")
    Case $iconmenu0008
    MsgBox (64, "Fehler", "Befehl nicht verfügbar")
    Case $iconmenu0009
    MsgBox (64, "Fehler", _exit ())
    EndSwitch
    #ce
    WEnd
    ;EndFunc

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

    Func _information0001($hWnd, $msg, $0001_0001, $dwTime)
    GUICtrlSetData($hTime, @HOUR & ":" & @MIN & ":" & @SEC)
    GUICtrlSetData($hDate, @MDAY & "." & @MON & "." & @YEAR)
    GUICtrlSetData($hYDay, @YDAY)
    $0002_0002 = _DateDiff('s', $0002_0001, _NowCalc())
    $0002_0003 = StringFormat("%.02d" & ":" & "%.02d" & ":" & "%.02d", Floor($0002_0002 / 3600), Mod(($0002_0002 / 60), 60), $0002_0002 - Floor($0002_0002 / 60) * 60)
    GUICtrlSetData($hRSince, $0002_0003)
    EndFunc ;==>_information0001

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

    Func _Exit()
    Exit
    EndFunc ;==>_Exit

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

    ; Bewirkt, dass sich die Statusbar bei Größenänderung des Fensters mitanpasst
    Func WM_SIZE($hWnd, $iMsg, $iwParam, $ilParam)
    _GUICtrlStatusBar_Resize($hStatus)
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_SIZE

    [/autoit]

    Edit: Resizing angepasst ($GUI_DOCKHEIGHT hat gefehlt)
    mfg (Auto)Bert

  • log-file auswerten

    • autoBert
    • 21. September 2009 um 10:44

    Hallo vivus,

    ich weis ja nicht mit welchen Prozessen dein Rechner sonst noch beschäftigt ist, hier meine Messungen für 10500 Einträge(NetBook Acer Aspire One, also wirklich nicht der schnellste) deine Version: 2392 ms, meine Version 823 ms, Version BugFix 105 ms,

    Hier nochmal die Version von Bugfix (Pfad etc, angepasst),

    [autoit]

    #include <File.au3>
    $begin = TimerInit()

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

    $file = 'log.log'
    $lines = _FileCountLines($file)
    $dif = TimerDiff($begin)

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

    MsgBox(0, 'Inhalt letzte Zeile', StringTrimLeft(FileReadLine($file, $lines-6), 10)) ; eventuell $lines-6 anpassen
    MsgBox(0,"Zeitunterschied",$dif)

    [/autoit]

    mfg (Auto)Bert

    mfg (Auto)Bert

  • log-file auswerten

    • autoBert
    • 21. September 2009 um 09:43

    Hallo vivus,

    diese Version sollte etwas schneller sein:

    Spoiler anzeigen
    [autoit]

    #include <array.au3>
    #Include <string.au3>

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

    Global $hFile, $Log, $aLog

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

    $hFile = FileOpen("log.log",0)
    $sLog = FileRead($hFile)
    FileClose($hFile)
    $aLog = _StringBetween($sLog,"EAN-Code: ","Variante: ")
    _ArrayDisplay($aLog)

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

    $last = UBound($aLog)

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

    $last = $aLog[$last - 1]

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

    MsgBox(0, "letzter Eintrag", "der letzte eintrag war " & $last)

    [/autoit]

    mfg (Auto)Bert

  • Geeeeeeeeeeeeeeeeeeeeeeeeburtstag

    • autoBert
    • 20. September 2009 um 19:32

    Happy Birthday Mr. Gun-Food

    da ich nicht singen kann hab ich mich bei YouTube bedient,

    mfg (Auto)Bert

  • ToolWindow erstellen: $WS_EX_TOOLWINDOW wird nicht gefunden

    • autoBert
    • 20. September 2009 um 17:14

    Hallo Dr.Doktor,

    da fehlt ein #include:

    [autoit]

    #include <WindowsConstants.au3>
    #include <GUIConstants.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form3 = GUICreate("Form1", 413, 306, 218, 132, -1, BitOR($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    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

  • Inhalt eines Ordner (Dateien und Ordner) löschen.

    • autoBert
    • 20. September 2009 um 12:38

    Hallo kram,

    dann benutze doch einfach FileDelete, also

    [autoit]

    FileDelete("d:\testautoit\*.*")

    [/autoit]

    ,

    mfg (Auto)Bert

  • Inhalt eines Ordner (Dateien und Ordner) löschen.

    • autoBert
    • 20. September 2009 um 12:11

    Hallo kram,

    Zitat von kram

    Ich würde gern sämtlichen Inhalt ich einem bestimmten Ordner löschen (Dateien und Ordner).

    Zitat von kram

    bei DirRemove muß ich aber leider den Name des zu löschenden Ordners wissen und dieser ist mir nicht bekannt.

    Was verstehst du den unter einem bestimmten Ordner :?: Bitte nähere Erläuterung,

    mfg (Auto)Bert

  • Ordner nach Dateien durchsuchen

    • autoBert
    • 19. September 2009 um 17:15

    hallo Pinguin94,

    zu 1) damit wird die Func _Check_Eingabe aufgerufen und der Doppelklick in der ListBox ermöglicht und in diesem Fall die Func _Open_Ordner aufgerufen
    zu 2) du kannst doch den HotKey aus- und wieder einschalten

    Spoiler anzeigen
    [autoit]

    #include <GuiListBox.au3>
    #include <WindowsConstants.au3>
    #include <File.au3>
    #include <Array.au3>

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

    Local $Ordner = '' ; Hier steht normalerweise ein Pfad, also nicht beachten

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

    HotKeySet("{ENTER}", "_Open_Ordner")
    HotKeySet("{PGUP}", "_Hide")
    HotKeySet("{PGDN}", "_Show")
    HotKeySet("{END}", "_Exit")

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

    Opt('GUIOnEventMode', 1)

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

    $gui = GUICreate('Suchen', 400, 600, -1, -1)
    GUISetOnEvent(-3, '_Ende')
    GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")

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

    Global $Input = GUICtrlCreateInput('', 10, 5, 380, 30)
    Global $List = GUICtrlCreateList('', 10, 40, 380, 560)
    Global $hList = GUICtrlGetHandle(-1)

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

    _Listtoarray()

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

    GUISetState()
    While 1
    Sleep(1000)
    WEnd

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

    ; Functions
    Func _Hide()
    GUISetState(@SW_HIDE) ;==> GUI Hide
    HotKeySet("{ENTER}")
    EndFunc ;==>_Hide

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

    Func _Show()
    HotKeySet("{ENTER}", "_Open_Ordner")
    GUISetState(@SW_SHOW) ;==> GUI Restore
    EndFunc ;==>_Show

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

    Func _Exit()
    Exit
    EndFunc ;==>_Exit

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

    Func _Listtoarray()
    Local $aOrdner = _FileListToArray($Ordner, "*.mp3", 0) ;Als Filter kann man auch .mp3 oder sowas wählen
    If @error Then
    MsgBox(0, "Fehler", @error)
    Return
    EndIf
    For $i = 1 To $aOrdner[0]
    GUICtrlSetData(-1, $aOrdner[$i])
    Next
    EndFunc ;==>_Listtoarray

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

    Func _Check_Eingabe($iwParam)
    Switch $iwParam
    Case 0x03000003
    _GUICtrlListBox_SetCurSel($hList, _GUICtrlListBox_FindInText($hList, GUICtrlRead($Input)))
    EndSwitch
    EndFunc ;==>_Check_Eingabe

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

    Func _Open_Ordner()
    If GUICtrlRead($List) <> "" Then ShellExecute($Ordner & '\' & GUICtrlRead($List))
    EndFunc ;==>_Open_Ordner

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

    Func _Ende()
    Exit
    EndFunc ;==>_Ende

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

    Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
    _Check_Eingabe($iwParam)
    Local $hWndFrom, $iIDFrom, $iCode, $hWndListBox
    If Not IsHWnd($List) Then $hWndListBox = GUICtrlGetHandle($List)
    $hWndFrom = $ilParam
    $iIDFrom = BitAND($iwParam, 0xFFFF) ; Low Word
    $iCode = BitShift($iwParam, 16) ; Hi Word
    Switch $hWndFrom
    Case $List, $hWndListBox
    Switch $iCode
    Case $LBN_DBLCLK
    _Open_Ordner()
    EndSwitch
    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_COMMAND

    [/autoit]


    zu 3) welchen Opt meinst du, kann nur

    [autoit]

    Opt('GUIOnEventMode', 1)

    [/autoit]

    entdecken, Falls du

    [autoit]

    GUISetOnEvent(-3, '_Ende')

    [/autoit]

    meinst, die -3 steht für $GUI_EVENT_CLOSE, also den Schliessen-Button der Gui [das "X" (oben rechts)]


    mfg (Auto)bert

  • fileread problem

    • autoBert
    • 19. September 2009 um 15:01

    Hallo reaker,

    versuchs doch einfach so:

    Spoiler anzeigen
    [autoit]

    $key = @ScriptDir&"\endkey.txt"
    $chk = 1
    FileDelete($key)
    $input = InputBox("Password", "Type the password you want to encrypt", "", "")

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

    ;$pass = Chr(65) & Chr(66) & Chr(67)
    $len = StringLen($input)
    for $i = 1 to $len
    $var = StringMid($input, $i, 1)

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

    if $var = "0" Then
    $chr="Chr(48)"
    ElseIf $var = "1" Then
    $chr ="Chr(49)"
    ElseIf $var = "2" Then
    $chr ="Chr(50)"
    ElseIf $var = "3" Then
    $chr ="Chr(51)"
    ElseIf $var = "4" Then
    $chr ="Chr(52)"
    ElseIf $var = "5" Then
    $chr ="Chr(53)"
    ElseIf $var = "6" Then
    $chr ="Chr(54)"
    ElseIf $var = "7" Then
    $chr ="Chr(55)"
    ElseIf $var = "8" Then
    $chr ="Chr(56)"
    ElseIf $var = "9" Then
    $chr ="Chr(57)"
    EndIf
    if $i < $len Then $chr = $chr & "&"
    FileWrite($key, $chr)
    $chk+=1
    Next

    [/autoit]


    wobei ich allerdings nicht ganz verstehe, dass du nicht die vorhandene Funktion _StringEncrypt() benutzt,

    Edit: sehe du hast das Problem mit "&" am Ende schon gelöst

    mfg (Auto)Bert

  • Reaktionstest

    • autoBert
    • 18. September 2009 um 23:19

    Hallo sedativade,

    hier die geänderte Version, musst du noch testen:

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <File.au3>
    #include <GUIConstantsEx.au3>

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

    $hGUI = GUICreate("reaktionstest", 500, 500)
    $files = _FileListToArray("Bilder", "*.bmp", 1)

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

    $hbild = GUICtrlCreatePic(@ScriptDir & "\Bilder\kreis01.bmp", 60, 60, 350, 350)

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

    GUISetState()
    _main()

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

    Func _main()

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

    _ladebild()

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

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

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

    Case HotKeySet("{r}", "WEITER_rechteck")

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

    Case HotKeySet("{k}", "WEITER_kreis")

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

    EndSwitch

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

    WEnd

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

    EndFunc ;==>_main

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

    Func WEITER_rechteck()

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

    $bild = $files[$randomarr[Floor(340 / 340)]]

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

    Select
    Case $bild = "rechteck01.bmp" Or $bild = "rechteck02.bmp" Or $bild = "rechteck03.bmp"
    MsgBox(0, $bild, "Richtig", 0, $hGUI)
    Case $bild = "kreis01.bmp" Or $bild = "kreis02.bmp" Or $bild = "kreis03.bmp"
    MsgBox(0, $bild, "Falsch", 0, $hGUI)
    EndSelect
    _main()

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

    EndFunc ;==>WEITER_rechteck

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

    Func WEITER_kreis()

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

    $bild = $files[$randomarr[Floor(340 / 340)]]

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

    Select
    Case $bild = "kreis01.bmp" Or $bild = "kreis02.bmp" Or $bild = "kreis03.bmp"
    MsgBox(0, $bild, "Richtig", 0, $hGUI)
    Case $bild = "rechteck01.bmp" Or $bild = "rechteck02.bmp" Or $bild = "rechteck03.bmp"
    MsgBox(0, $bild, "Falsch", 0, $hGUI)
    EndSelect
    _main()

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

    EndFunc ;==>WEITER_kreis

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

    Func _random()

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

    Global $randomarr[1]

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

    While True
    If UBound($randomarr) = UBound($files) Then ExitLoop
    $r = Random(1, $files[0], 1)
    If _ArraySearch($randomarr, $r) = -1 Then _ArrayAdd($randomarr, $r)
    WEnd

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

    EndFunc ;==>_random

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

    Func _ladebild()
    _random()
    GUICtrlDelete($hbild)
    $hbild = GUICtrlCreatePic(@ScriptDir & "\Bilder\" & $files[$randomarr[Floor(340 / 340)]], 60, 60, 350, 350)
    EndFunc ;==>_ladebild

    [/autoit]

    und hier eine 2. Version (etwas kürzer):

    Spoiler anzeigen
    [autoit]

    #include <File.au3>
    #include <GUIConstantsEx.au3>
    Global $Bild, $hBild = 0

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

    $hGUI = GUICreate("reaktionstest", 500, 500)

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

    $hRechteck = GUICtrlCreateButton("&Rechteck", 10, 10, 140)
    $hKreis = GUICtrlCreateButton("&Kreis", 200, 10, 140)

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

    GUISetState()
    _main()

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

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

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

    Case $hRechteck
    If StringUpper(StringLeft($Bild, 1)) = "R" Then
    MsgBox(0, $Bild, "Richtig", 0, $hGUI)
    Else
    MsgBox(0, $Bild, "Falsch", 0, $hGUI)
    EndIf
    _ladebild()
    Case $hKreis
    If StringUpper(StringLeft($Bild, 1)) = "K" Then
    MsgBox(0, $Bild, "Richtig", 0, $hGUI)
    Else
    MsgBox(0, $Bild, "Falsch", 0, $hGUI)
    EndIf
    _ladebild()
    EndSwitch

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

    WEnd
    EndFunc ;==>_main

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

    Func _ladebild()
    Local $iMaxNr = 3
    $iName = Random(0, 1, 1)
    If $iName = 0 Then
    $Bild = "Rechteck"
    Else
    $Bild = "Kreis"
    EndIf
    $iNr = Random(1, 3, 1)
    Switch $iNr
    Case 1 To 9
    $Bild = $Bild & "0" & $iNr
    Case 10 To 99
    $Bild = $Bild & $iNr
    EndSwitch
    $Bild = $Bild & ".bmp"
    ;ConsoleWrite("LadeBild :" & $Bild & @CRLF)
    if $hbild <> 0 Then GUICtrlDelete($hBild)
    $hbild = GUICtrlCreatePic(@ScriptDir & "\Bilder\" & $Bild, 60, 60, 350, 350)
    EndFunc ;==>_ladebild

    [/autoit]

    Edit: in beiden Versionen noch die MSGBOXen verändert, so dass sie immer im Vordergrund sind. Deine Version ruft immer wieder Main auf, ist eigentlich unnötig, aber ohne klappt's nicht (könnte Probleme geben)

    mfg (Auto)Bert

  • _iecreateembedded - style

    • autoBert
    • 18. September 2009 um 19:34

    Hallo Darknoop,

    die Stile musst du bei der GUI setzen in die du den Explorer einbettest. Anbei eine "Quick- and Dirty"-Lösung zur Veranschaulichung. Das Ursprungsskript ist nicht von mir, habe nur den IE eingebettet,

    mfg (Auto)Bert

  • Schleife Wiederholen

    • autoBert
    • 17. September 2009 um 22:31

    Hallo Jonathan,

    dein Spoiler im Spoiler scheint die Formatierung dieses Threads durcheinanderzubringen,

    mfg (Auto)Bert

  • Schleife Wiederholen

    • autoBert
    • 17. September 2009 um 21:28

    Hallo DumdiDum,

    dann poste doch einfach mal dein bisheriges Skript, meine Glaskugel scheint defekt zu sein,

    mfg (Auto)Bert

  • Gui nach Änderung an Combobox updaten

    • autoBert
    • 17. September 2009 um 21:20

    Hallo Masterciw,

    suchst du soetwas?

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>

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

    Opt('MustDeclareVars', 1)

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

    Example()

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

    Func Example()
    Local $menu1, $n1, $n2, $n3, $msg, $menustate, $menutext

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

    GUICreate("My GUICtrlRead") ; will create a dialog box that when displayed is centered

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

    $menu1 = GUICtrlCreateMenu("File")

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

    $n1 = GUICtrlCreateCombo("Bitte einen Eintrag auswählen", 10, 10) ; create first item
    GUICtrlSetData(-1, "Eintrag 1|Eintrag 2|Eintrag 3") ; add other item
    $n2 = GUICtrlCreateInput("", 10, 80, 50)
    $n3 = GUICtrlCreateButton("Read", 10, 110, 50)
    GUICtrlSetState(-1, $GUI_FOCUS) ; the focus is on this button

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

    GUISetState() ; will display an empty dialog box
    ; Run the GUI until the dialog is closed
    Do
    $msg = GUIGetMsg()
    Switch $msg
    Case $n1
    GUICtrlSetData($n2, GUICtrlRead($n1)) ; display the selected listbox entry in the input
    Case $n3
    $menustate = GUICtrlRead($menu1) ; return the state of the menu item
    $menutext = GUICtrlRead($menu1, 1) ; return the text of the menu item
    MsgBox(0, "State and text of the menuitem", "state:" & $menustate & @LF & "text:" & $menutext)
    EndSwitch
    Until $msg = $GUI_EVENT_CLOSE
    EndFunc ;==>Example

    [/autoit]

    mfg (Auto)Bert

  • Multi-Download-Tool (MDT)

    • autoBert
    • 14. September 2009 um 23:52

    Hallo Oscar,

    nein, ich wundere mich nur wie die 80% des gesamten zustande kommen:

    • 1. Ansatz für Gesamtprozent: 100 % / 5 (alle Downloads) * 2 (erfolgreiche Downloads) = 40 %
    • 2. Ansatz für Gesamtprozent 100 % / 5 (alle Downloads) * 3 (2 erfolgreiche Dowloads und einen selbst abgebrochen) = 60 %
    • 3. Ansatz für Gesamtprozent 100 % / 4 (alle Downloads - 1 selber abgebrochen) * 2 (2 erfolgreiche Dowloads) = 50 %


    Die Hauptinfo ist für mich die ListView, da seh ich welche Downloads schief gelaufen sind, von daher stört mich die Gesamtprozentzahl nicht,

    mfg (Auto)Bert

  • Multi-Download-Tool (MDT)

    • autoBert
    • 14. September 2009 um 17:15

    Hallo Oscar,

    dein Multi-Downloader ist ein sehr brauchbares und nützliches Tool :thumbup: . Bei der Progressbar insgesamt hat sich anscheinend ein kleiner Bug eingeschlichen, der nur auftritt wenn nicht alle Downloads erfolgreich waren:
    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.
    IrfanView habe ich selbst abgebrochen und die Downloads nicht weiter beobachtet (INet mit ca. 16 KB/sec Download) Avira war nicht erfolgreich, wurde bei 19 MB abgebrochen, TeamViewer wurde erst gar nicht angefangen downzuloaden. [OT]Bei meinem Zugang über Web-N-Walk kommen leider öfters Störungen im INet vor.[/OT]
    Das schöne ist aber ich sehe sofort anhand der Farbe, welche Downloads nicht geklappt haben und kann diese erneut starten.

    mfg (Auto)Bert

  • tsremote hilfe

    • autoBert
    • 14. September 2009 um 00:27

    Hallo Drop_Dead,

    schau dir dieses Thema von Tom99 an, da kannst du dir die fehlenden Dateien downloaden.
    Ich habe mich mal daran probiert, komme aber nicht zum Ziel

    [autoit]

    #include "_tsremote.au3"
    Global $iChannelID = "1"
    Global $avChannelInfo[6]
    tsrConnect("teamspeak://voice.teamspeak.org:9500") ;läuft schief URL?????
    if not @error Then
    tsrGetChannelInfoByID($iChannelID) ;= 1
    If $avChannelInfo[1] > 0 Then
    MsgBox(0, "Test", $avChannelInfo[1])
    Else
    MsgBox(0, "Satz mit X", "war wohl nix! (ChannelInfo)")
    EndIf
    Else
    MsgBox(0, "Satz mit X", "war wohl nix! (Connect)")
    EndIf

    [/autoit]

    Hier gibte es eine kleine Doku für Pascal-Programmierer zu der tsremote.dll, daraus habe ich auch die URL für tsrConnect entnommen,

    mfg (Auto)Bert

  • Taskbar Eigenschaften

    • autoBert
    • 13. September 2009 um 22:43

    Hallo BugFix,

    gute Funktion, kann ich sicher einmal gebrauchen. :thumbup: In deinem Skript ist mir aufgefallen, dass man die TaskBar nicht nur unten anordnen kann:

    Code
    "ALIGN"  - Anordnung: 1=links, 2=rechts, 3=oben, 4=unten

    Wo kann ich das verstellen (Win XP SP3)?

    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™