Programme in TreeView ausführen (Drag & Drop)

  • Hallo subzero007,

    schau dir mal diesen Beitrag von mir an https://autoit.de/index.php?page…86854#post86854 und lade es dir herunter, in der Demo zum Aufruf der _Easter.au3 hab ich eine in der Größe veränderbare GUI:

    [autoit]

    Global $sTitel = 'Beispiele zur Nutzung der UDF _Easter'

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

    Local $hMainGui = GUICreate($sTitel, 400, 280, 140, 150, BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_SIZEBOX))
    ;erzeugt eine GUI die zurückgebebene ID wird in der Variablen $hMainGui gespeichert
    ;die GUI hat BOXen für Mininmieren, Maximieren und ist in der Größe frei änderbar

    [/autoit]


    Mit GUICtrlSetResizing beinflusst du dann noch das Verhalten der Gui-Controls, schau dir einfach die Demo an,

    mfg (Auto)Bert

  • nicht schlecht ;)

    kannst du mir das in dem code als beispiel zeigen mit kommentar habe es noch nicht so richtig verstanden

    Spoiler anzeigen
    [autoit]

    #include <ListviewConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <SliderConstants.au3>
    #Include <GuiListView.au3>
    #Include <Array.au3>
    #Include <File.au3>
    ;#Include <ChaosKeks.Exe>

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

    Global $Active = True, $mod = True
    Dim $filepaths[1],$szDrive, $szDir, $szFName, $szExt

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

    $hGUI = GUICreate("ListView - ExecuteIt", 275, 300, Default, Default, Default, $WS_EX_ACCEPTFILES)
    $hListview = GUICtrlCreateListView("Files", 10, 10, 254, 220)
    _GUICtrlListView_SetExtendedListViewStyle($hListView, BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT))
    _GUICtrlListView_SetColumnWidth($hListView, 0, 250)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED)
    $contextmenu = GUICtrlCreateContextMenu($hListView)
    $insertitem = GUICtrlCreateMenuItem("Insert Item(s)", $contextmenu)
    $renameitem = GUICtrlCreateMenuItem("Rename", $contextmenu)
    $deletemenu = GUICtrlCreateMenu("Delete...", $contextmenu)
    $deleteAll = GUICtrlCreateMenuItem("All Items", $deletemenu)
    $deleteitem = GUICtrlCreateMenuItem("Selected Item", $deletemenu)
    GUICtrlCreateMenuItem("", $contextmenu)
    $exititem = GUICtrlCreateMenuItem("Exit", $contextmenu)
    $label = GUICtrlCreateLabel("Transparenz = 100%", 80, 237, -1, 14)
    $slider = GUICtrlCreateSlider(10, 257, 254, 20, BitOR($TBS_AUTOTICKS, $WS_BORDER))
    GuiCtrlSetLimit($slider, 100,20)
    GuiCtrlSetData($slider, 100)
    GUISetState(@SW_SHOW)
    $EditBox = GUICreate('', 240, 30, -1, -1, BitOR($WS_POPUP,$WS_BORDER),$WS_EX_TOPMOST)
    $hEdit = GUICtrlCreateInput('', 5, 5, 195, 20)
    $hButton = GuiCtrlCreateButton("...",205,5,30,20)
    IF FileExists(@ScriptDir&"/ExecuteItLog.ini") Then
    $aData = IniReadSection(@ScriptDir&"\ExecuteItLog.ini","Files")
    For $i = 1 To UBound($aData) - 1
    _ArrayAdd($filepaths, $aData[$i][1])
    $split = _PathSplit($aData[$i][1], $szDrive, $szDir, $szFName, $szExt)
    $file = $split[3]
    _GUICtrlListView_AddItem($hListview, $file)
    Next
    FileDelete(@ScriptDir&"/ExecuteItLog.ini")
    EndIf
    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
    GUIRegisterMsg($WM_HSCROLL, "WM_HVSCROLL")

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE,$exititem
    For $i = 1 To Ubound($filepaths)-1
    IniWrite(@ScriptDir&"\ExecuteItLog.ini","Files", "Key"&$i,$filepaths[$i]& @LF)
    Next
    Exit
    Case $GUI_EVENT_DROPPED
    $file = @GUI_DragFile
    If StringRegExp($file, "^.+\.(?i)((EXE)|(AU3)|(GIF)|(JPG))$") Then
    _ArrayAdd($filepaths, $file)
    $split = _PathSplit($file, $szDrive, $szDir, $szFName, $szExt)
    $file = $split[3]
    _GUICtrlListView_AddItem($hListview, $file)
    Else
    MsgBox(0, "", $file & @CRLF & "Is an invalid file type.")
    EndIf
    Case $hButton
    GUIRegisterMsg($WM_ACTIVATE, "")
    GuiSetState(@SW_HIDE, $EditBox)
    Local $currentItem
    $insert = FileOpenDialog("Select an item to insert!",@DesktopDir, "Dateien(*.Exe;*.Au3;*.gif;*.jpg)",1)
    If $insert <> "" Then
    For $i = 0 To _GuiCtrlListView_GetItemCount($hlistview)
    If _GuiCtrlListView_GetItemSelected($hlistview,$i) Then
    $mod = False
    ExitLoop
    EndIf
    Next
    $split = _PathSplit($insert, $szDrive, $szDir, $szFName, $szExt)
    GuiCtrlSetData($hEdit, $split[3])
    GuiSetState(@SW_Show, $EditBox)
    EndIf
    GUIRegisterMsg($WM_ACTIVATE, "WM_ACTIVATE")
    Case $insertitem
    $insert = FileOpenDialog("Select an item to insert!",@DesktopDir, "Dateien(*.Exe;*.Au3;*.gif;*.jpg)",5)
    $insertsplit = StringSplit($insert, "|")
    For $i = 1 To Ubound($insertsplit) -1
    $split = _PathSplit($insertsplit[$i], $szDrive, $szDir, $szFName, $szExt)
    $file = $split[3]
    If Ubound($insertsplit) -1 > 1 Then
    If $i > 1 Then
    _ArrayAdd($filepaths, $insertsplit[1]&"\"&$insertsplit[$i])
    _GUICtrlListView_AddItem($hListview, $file)
    EndIf
    Else
    _ArrayAdd($filepaths, $insertsplit[$i])
    _GUICtrlListView_AddItem($hListview, $file)
    EndIf
    Next
    Case $renameitem
    Local $posGui, $posControl, $textItem
    For $i = 0 To _GuiCtrlListView_GetItemCount($hlistview)
    If _GuiCtrlListView_GetItemSelected($hlistview,$i) Then
    $textItem = _GUICtrlListView_GetItemText($hlistview, $i)
    $posControl = _GuiCtrlListView_GetItemPositionY($hlistview, $i)
    $posGui = WinGetPos($hGui)
    ExitLoop
    EndIf
    Next
    If $textitem <> "" Then
    GUIRegisterMsg($WM_ACTIVATE, "WM_ACTIVATE")
    GuiSetState(@SW_DISABLE, $hGui)
    $mod = True
    HotKeySet('{ESC}', '_EditEsc')
    HotKeySet('{ENTER}', '_EditEnter')
    GUICtrlSetData($hEdit, $textItem)
    WinMove($EditBox, "", $posGui[0]+19,$posGui[1]+$posControl+28)
    GuiSetState(@SW_SHOW, $EditBox)
    EndIf
    Case $deleteitem
    Local $currentItem = "none"
    For $k = 0 To _GuiCtrlListView_GetItemCount($hlistview)
    If _GuiCtrlListView_GetItemSelected($hlistview,$k) Then
    $currentItem = $k
    ExitLoop
    EndIf
    Next
    _ArrayDelete($filepaths,$currentItem+1)
    _GUICtrlListView_DeleteItemsSelected(GUICtrlGetHandle($hListView))
    Case $deleteAll
    _GUICtrlListView_DeleteAllItems(GUICtrlGetHandle($hListView))
    For $i = 1 To Ubound($filepaths)-1
    _ArrayDelete($filepaths, $i)
    Next
    EndSwitch
    WEnd

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

    Func _EditEnter()
    $text = GUICtrlRead($hEdit)
    _GUICtrlListView_SetItemText($hListView, $i, $text)
    If $mod Then
    $split = _PathSplit($filepaths[$i+1], $szDrive, $szDir, $szFName, $szExt)
    $filepaths[$i+1] = $split[1] & $split[2] & $text & $split[4]
    Else
    $filepaths[$i+1] = $insert
    EndIf
    GuiSetState(@SW_ENABLE, $hGui)
    WinActivate($hGui)
    GUIRegisterMsg($WM_ACTIVATE, "")
    HotKeySet('{ENTER}')
    HotKeySet('{ESC}')
    ;~ _ArrayDisplay($filepaths)
    EndFunc

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

    Func _EditEsc()
    GuiSetState(@SW_ENABLE, $hGui)
    WinActivate($hGui)
    GUIRegisterMsg($WM_ACTIVATE, "")
    HotKeySet('{ESC}')
    HotKeySet('{ENTER}')
    EndFunc

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

    Func WM_NOTIFY($hWnd, $MsgID, $wParam, $lParam)
    Local $tagNMHDR, $event, $hwndFrom, $code
    $tagNMHDR = DllStructCreate("int;int;int", $lParam)
    If @error Then Return 0
    $code = DllStructGetData($tagNMHDR, 3)
    If $wParam = $hListView And $code = -3 And _GUICtrlListView_GetSelectedCount($hListView) > 0 Then
    For $i = 0 To _GUICtrlListView_GetItemCount($hListView)
    IF _GUICtrlListView_GetItemSelected($hListView, $i) Then
    ShellExecute($filepaths[$i+1])
    EndIf
    Next
    Endif
    Return $GUI_RUNDEFMSG
    EndFunc

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

    Func WM_HVSCROLL($hwnd, $iMsg, $wParam, $lParam)
    Local $hWndFrom, $iCode
    If Not IsHWnd($slider) Then $hWndCombo1 = GUICtrlGetHandle($slider)
    $hWndFrom = $lParam
    $iCode = _WinAPI_HiWord($wParam)
    Switch $hWndFrom
    Case $slider, $hWndCombo1
    GUICtrlSetData($label, "Transparenz = " & GUICtrlRead($slider) & "%")
    WinSetTrans("ListView - ExecuteIt", "", GUICtrlRead($slider) * 2.55)
    EndSwitch
    EndFunc

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

    Func WM_ACTIVATE($hWnd, $Msg, $wParam, $lParam)
    $state = WinGetState($hGui)
    If Not BitAnd($state, 8) Then
    GuiSetState(@SW_HIDE, $EditBox)
    WinActivate($hGui)
    Else
    GuiSetState(@SW_Show, $EditBox)
    EndIf
    EndFunc

    [/autoit]

    lg SubZero ;)
    ==========================================================================

    "Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral."

  • Hallo subzero007,

    hier ist es:

    Spoiler anzeigen
    [autoit]

    #cs **************************************************************************

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

    Programme in TreeView ausführen (Drag &amp; Drop)

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

    https://autoit.de/index.php?page…96194#post96194

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

    #ce **************************************************************************

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

    ; #AUTHOR = CHAOSKEKS# ============================================================================
    ; #NAME = CHAOS-EXECUTION#
    ; #DATE = 24.05.2009#
    ; Resizen eingebaut AutoBert 25.05.2009
    #include <ListviewConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <SliderConstants.au3>
    #Include <GuiListView.au3>
    #Include <Array.au3>
    #Include <File.au3>

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

    Global $Active = True, $mod = True, $i, $trans = 0
    Dim $filepaths[1],$szDrive, $szDir, $szFName, $szExt

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

    $hGUI = GUICreate("Chaos-Execution", 275, 310, Default, Default, BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_SIZEBOX), $WS_EX_ACCEPTFILES)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED)
    $hListview = GUICtrlCreateListView("Files|*. Ext", 10, 10, 254, 220)
    GUICtrlSetResizing(-1, $GUI_DOCKBORDERS) ;Abstand zu allen 4 Seiten bleibt fix
    _GUICtrlListView_SetExtendedListViewStyle($hListView, BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT))
    _GUICtrlListView_SetColumnWidth($hListView, 0, 199)
    IF FileExists(@ScriptDir&"/ExecuteItLog.ini") Then
    $aData = IniReadSection(@ScriptDir&"\ExecuteItLog.ini","Files")
    For $i = 1 To UBound($aData) - 1
    _ArrayAdd($filepaths, $aData[$i][1])
    $split = _PathSplit($aData[$i][1], $szDrive, $szDir, $szFName, $szExt)
    _GUICtrlListView_AddItem($hListview, $split[3])
    _GUICtrlListView_AddSubItem($hListView, $i-1,StringTrimLeft($split[4],1),1)
    Next
    $trans = IniRead(@ScriptDir&"\ExecuteItLog.ini","Trans","Key1", "0")
    FileDelete(@ScriptDir&"/ExecuteItLog.ini")
    EndIf

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

    $contextmenu = GUICtrlCreateContextMenu($hListView)
    $insertitem = GUICtrlCreateMenuItem("Insert Item(s)", $contextmenu)
    $renameitem = GUICtrlCreateMenuItem("Rename", $contextmenu)
    $deletemenu = GUICtrlCreateMenu("Delete...", $contextmenu)
    $deleteAll = GUICtrlCreateMenuItem("All Items", $deletemenu)
    $deleteitem = GUICtrlCreateMenuItem("Selected Item", $deletemenu)
    GUICtrlCreateMenuItem("", $contextmenu)
    $exititem = GUICtrlCreateMenuItem("Exit", $contextmenu)

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

    $deletebutton = GuiCtrlCreateButton("&Delete List",54,252,60,28)
    GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKSIZE + $GUI_DOCKBOTTOM)
    ;Abstand Links und unten bleibt fix die Größe (Breite und Höhe) ebenso
    $insertbutton = GuiCtrlCreateButton("&Insert",10,252,40,28)
    GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKSIZE + $GUI_DOCKBOTTOM)
    ;Abstand Links und unten bleibt fix die Größe (Breite und Höhe) ebenso
    $label = GUICtrlCreateLabel("Transparence = 0%", 148, 237, -1, 14)
    GUICtrlSetResizing(-1, $GUI_DOCKRIGHT + $GUI_DOCKBOTTOM + $GUI_DOCKHEIGHT)
    ;Abstand Rechts und unten bleibt fix die Höhe ebenso
    $slider = GUICtrlCreateSlider(120, 257, 144, 20, BitOR($TBS_AUTOTICKS, $WS_BORDER))
    GUICtrlSetResizing(-1, $GUI_DOCKRIGHT + $GUI_DOCKBOTTOM + $GUI_DOCKHEIGHT)
    ;Abstand Rechts und unten bleibt fix die Höhe ebenso
    GuiCtrlSetLimit($slider, 80,0)
    GuiCtrlSetData($slider, $trans)
    GUICtrlSetData($label, "Transparence = " & GUICtrlRead($slider) & "%")
    WinSetTrans("Chaos-Execution", "", 255 - GUICtrlRead($slider) * 2.55)
    Dim $Acc[2][2] = [["^i", $insertButton], ["^d", $deleteALL]]
    GUISetAccelerators($Acc)
    GUISetState(@SW_SHOW)

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

    $EditBox = GUICreate('', 240, 30, -1, -1, BitOR($WS_POPUP,$WS_BORDER),$WS_EX_TOPMOST+$WS_EX_MDICHILD,$hGui)
    $hEdit = GUICtrlCreateInput('', 5, 5, 195, 20)
    $hButton = GuiCtrlCreateButton("...",205,5,30,20)
    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
    GUIRegisterMsg($WM_HSCROLL, "WM_HVSCROLL")

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

    ; #MAIN LOOP# ==============================================================================================
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE,$exititem
    For $i = 1 To Ubound($filepaths)-1
    IniWrite(@ScriptDir&"\ExecuteItLog.ini","Files", "Key"&$i,$filepaths[$i]& @LF)
    Next
    IniWrite(@ScriptDir&"\ExecuteItLog.ini","Trans", "Key1",GuiCtrlRead($slider))
    Exit
    Case $GUI_EVENT_DROPPED
    $file = @GUI_DragFile
    If StringRegExp($file, "^.+\.(?i)((EXE)|(AU3)|(GIF)|(JPG))$") Then
    _ArrayAdd($filepaths, $file)
    $split = _PathSplit($file, $szDrive, $szDir, $szFName, $szExt)
    _GUICtrlListView_AddItem($hListview, $split[3])
    _GUICtrlListView_AddSubItem($hListView, _GuiCtrlListView_GetItemCount($hlistview)-1,StringTrimLeft($split[4],1),1)
    Else
    MsgBox(64, "Chaos-Execution Info!", $file & @CRLF & "Is an invalid file type.")
    EndIf
    Case $hButton
    GUIRegisterMsg($WM_ACTIVATE, "")
    GuiSetState(@SW_HIDE, $EditBox)
    GuiSetState(@SW_HIDE, $hGui)
    $insert = FileOpenDialog("Select an item to insert!",@DesktopDir, "Dateien(*.Exe;*.Au3;*.gif;*.jpg)",1)
    GuiSetState(@SW_SHOW, $hGui)
    If $insert <> "" Then
    For $i = 0 To _GuiCtrlListView_GetItemCount($hlistview)
    If _GuiCtrlListView_GetItemSelected($hlistview,$i) Then
    $mod = False
    ExitLoop
    EndIf
    Next
    $split = _PathSplit($insert, $szDrive, $szDir, $szFName, $szExt)
    GuiCtrlSetData($hEdit, $split[3])
    GuiSetState(@SW_Show, $EditBox)
    Else
    _EditEsc()
    EndIf
    GUIRegisterMsg($WM_ACTIVATE, "WM_ACTIVATE")
    Case $insertitem,$insertButton
    $insert = FileOpenDialog("Select an item to insert!",@DesktopDir, "Dateien(*.Exe;*.Au3;*.gif;*.jpg)",5)
    If $insert <> "" Then
    $insertsplit = StringSplit($insert, "|")
    For $i = 1 To Ubound($insertsplit) -1
    $split = _PathSplit($insertsplit[$i], $szDrive, $szDir, $szFName, $szExt)
    If Ubound($insertsplit) -1 > 1 Then
    If $i > 1 Then
    _ArrayAdd($filepaths, $insertsplit[1]&"\"&$insertsplit[$i])
    _GUICtrlListView_AddItem($hListview, $split[3])
    _GUICtrlListView_AddSubItem($hListView,_GuiCtrlListView_GetItemCount($hlistview)-1,StringTrimLeft($split[4],1),1)
    EndIf
    Else
    _ArrayAdd($filepaths, $insertsplit[$i])
    _GUICtrlListView_AddItem($hListview, $split[3])
    _GUICtrlListView_AddSubItem($hListView,_GuiCtrlListView_GetItemCount($hlistview)-1,StringTrimLeft($split[4],1),1)
    EndIf
    Next
    EndIf
    Case $renameitem
    Local $posGui, $posControl, $textItem
    For $i = 0 To _GuiCtrlListView_GetItemCount($hlistview)
    If _GuiCtrlListView_GetItemSelected($hlistview,$i) Then
    $textItem = _GUICtrlListView_GetItemText($hlistview, $i)
    $posControl = _GuiCtrlListView_GetItemPositionY($hlistview, $i)
    $posGui = WinGetPos($hGui)
    ExitLoop
    EndIf
    Next
    If $textitem <> "" Then
    GUIRegisterMsg($WM_ACTIVATE, "WM_ACTIVATE")
    GuiSetState(@SW_DISABLE, $hGui)
    $mod = True
    HotKeySet('{ESC}', '_EditEsc')
    HotKeySet('{ENTER}', '_EditEnter')
    GUICtrlSetData($hEdit, $textItem)
    WinMove($EditBox, "", $posGui[0]+19,$posGui[1]+$posControl+28)
    GuiSetState(@SW_SHOW, $EditBox)
    EndIf
    Case $deleteitem
    For $i = 0 To _GuiCtrlListView_GetItemCount($hlistview)
    If _GuiCtrlListView_GetItemSelected($hlistview,$i) Then
    ExitLoop
    EndIf
    Next
    _ArrayDelete($filepaths,$i+1)
    _GUICtrlListView_DeleteItemsSelected(GUICtrlGetHandle($hListView))
    Case $deleteAll, $deleteButton
    _GUICtrlListView_DeleteAllItems(GUICtrlGetHandle($hListView))
    For $i = 1 To Ubound($filepaths)-1
    _ArrayDelete($filepaths, $i)
    Next
    EndSwitch
    WEnd

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

    ; #INTERNAL FUNCTIONS# =====================================================================================
    Func _EditEnter()
    $text = GUICtrlRead($hEdit)
    If $mod Then
    $split = _PathSplit($filepaths[$i+1], $szDrive, $szDir, $szFName, $szExt)
    FileMove($filepaths[$i+1], $split[1] & $split[2] & $text & $split[4])
    $filepaths[$i+1] = $split[1] & $split[2] & $text & $split[4]
    Else
    $filepaths[$i+1] = $insert
    $split = _PathSplit($filepaths[$i+1], $szDrive, $szDir, $szFName, $szExt)
    EndIf
    _GUICtrlListView_SetItemText($hListView, $i, $text)
    _GUICtrlListView_SetItemText($hListView, $i, StringTrimLeft($split[4],1),1)
    _EditEsc()
    EndFunc

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

    Func _EditEsc()
    GuiSetState(@SW_HIDE, $EditBox)
    GuiSetState(@SW_ENABLE, $hGui)
    WinActivate($hGui)
    GUIRegisterMsg($WM_ACTIVATE, "")
    HotKeySet('{ESC}')
    HotKeySet('{ENTER}')
    EndFunc

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

    ; #REGISTERED FUNCTIONS# ==================================================================================
    Func WM_NOTIFY($hWnd, $MsgID, $wParam, $lParam)
    Local $tagNMHDR, $event, $hwndFrom, $code
    $tagNMHDR = DllStructCreate("int;int;int", $lParam)
    If @error Then Return 0
    $code = DllStructGetData($tagNMHDR, 3)
    If $wParam = $hListView And $code = -3 And _GUICtrlListView_GetSelectedCount($hListView) > 0 Then
    For $i = 0 To _GUICtrlListView_GetItemCount($hListView)
    IF _GUICtrlListView_GetItemSelected($hListView, $i) Then
    ShellExecute($filepaths[$i+1])
    EndIf
    Next
    Endif
    Return $GUI_RUNDEFMSG
    EndFunc

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

    Func WM_HVSCROLL($hwnd, $iMsg, $wParam, $lParam)
    Local $hWndFrom, $iCode
    If Not IsHWnd($slider) Then $hWndCombo1 = GUICtrlGetHandle($slider)
    $hWndFrom = $lParam
    $iCode = _WinAPI_HiWord($wParam)
    Switch $hWndFrom
    Case $slider, $hWndCombo1
    GUICtrlSetData($label, "Transparence = " & GUICtrlRead($slider) & "%")
    WinSetTrans("Chaos-Execution", "", 255 - GUICtrlRead($slider) * 2.55)
    EndSwitch
    EndFunc

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

    Func WM_ACTIVATE($hWnd, $Msg, $wParam, $lParam)
    $state = WinGetState($hGui)
    If NOT BitAnd($state, 8) Then
    GuiSetState(@SW_HIDE, $EditBox)
    WinActivate($hGui)
    Else
    GuiSetState(@SW_Show, $EditBox)
    EndIf
    EndFunc

    [/autoit]


    Das Resizen hab ich auskommentiert für den Rest wäre @ChaosKeks zuständig (eigentlich hatte ich einen TV erwartet, ist aber ein LV)

    mfg (Auto)Bert

  • Ja ich war auch schon fleißig... Aber ich stolper im moment darüber, dass ich eine minmal größe für die Gui bestimmen will..
    Sicher könnte ich das über GuIRegistermsg und WinMove erledigen.. das sieht aber behindert aus, weil dann winmove gegen $WS_SIZEBOX ankämpft!

    Edit: ah nice endlich hab ich was gefunden!

    Einmal editiert, zuletzt von ChaosKeks (25. Mai 2009 um 13:17)

  • Jupp war schon auf die Variante gekommen :P (siehe Edit)

    Also hab jetzt das mit dem Resize geregelt, außerdem hinzugefügt, dass man mehrere Files auf einmal per Drag and Drop ins ListView schieben kann, hab die ColumnSchrift ein wenig verändert und hab alles an die Ini-Einstellungen angepasst!

    Das mit Subzeros Bild hab ich allerdings nicht verstanden 8|

    Naja Bitteschön:

    Spoiler anzeigen

    PS: Wer noch irgendwelche Verbesserungen haben will, immer einfach drauf los posten! Langsam machts Spaß an dem Ding zu arbeiten ^^
    Hmm glaub ich mach spätta nen Thread für Verbesserungsvorschläge im Script-Forum auf.. auch weil mein ListView eig garnicht zur überschrift passt! :D

    3 Mal editiert, zuletzt von ChaosKeks (25. Mai 2009 um 15:00)

  • Hallo @ChaosKeks,

    ist richtig gut geworden :thumbup: , den Max-Wert für with würde ich etwas höher setzen, aber das kann ja jeder selber machen, du solltest dir überlegen das Skript in Skripte einzustellen, weil unter TV sucht und findet (fast niemand) ein LV

    Edit: das mit dem Bild versteh ich auch noch nicht

    mfg (Auto)Bert

  • Danke für das Kompliment :D Ma sehen was sich mit der Width machen lässt...(Der Grund warum ich das nicht sofort mit dem WIdth ändere ist, das ich die Erfahrung gemacht hat, das das Script proportional an Langsamkeit zunimmt, je mehr man was an der Gui verändert..)

    So hab daraus nen eigenen Thread gemacht wenn noch jemand was posten will ->
    https://autoit.de/index.php?page…96309#post96309

    Einmal editiert, zuletzt von ChaosKeks (25. Mai 2009 um 15:14)