Dimmak
Знающий
- Сообщения
- 185
- Репутация
- 9
Помогите, пожалуйста, определить ошибку! :stars:
=> Запускаю скрипт => правый клик на val_1 => "ExitScript"
val_1 удаляется из списка ( нужный результат )
Если закрыть-открыть окно по горячей клавише - все ок!
Объект удаляется из списка.
Но если закрыть окно(x) через $GUI_EVENT_CLOSE, снова открыть посредством горячей клавиши и выполнить
правый клик на val_1 => "ExitScript" - элемент из списка не удалится.
Все работает до тех пор, пока не закрою окно(х).
Case $GUI_EVENT_CLOSE...
=> Запускаю скрипт => правый клик на val_1 => "ExitScript"
val_1 удаляется из списка ( нужный результат )
Если закрыть-открыть окно по горячей клавише - все ок!
Объект удаляется из списка.
Но если закрыть окно(x) через $GUI_EVENT_CLOSE, снова открыть посредством горячей клавиши и выполнить
правый клик на val_1 => "ExitScript" - элемент из списка не удалится.
Все работает до тех пор, пока не закрою окно(х).
Case $GUI_EVENT_CLOSE...
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiListView.au3>
#Include <WinAPIex.au3>
#include <Constants.au3>
#include <Process.au3>
#include <Misc.au3>
#Include <HotKey.au3>
#Include <vkConstants.au3>
;#Include <_my.au3>
#include-once
#NoTrayIcon
_singleton(@ScriptName)
_HotKeyAssign(BitOR($CK_CONTROL, $CK_SHIFT, $VK_1), '_Show')
Dim $arr[4]
$arr[1] = 'val_1'
$arr[2] = 'val_2'
$arr[3] = 'val_3'
$Gui = GUICreate("Prs_Mngr",225 ,260 ,-1,-1)
$ListView = GUICtrlCreateListView("Name|PiD",5,5,215,215,-1)
$MenuList = GUICtrlCreateContextMenu($ListView)
$MenuKIllItem = GUICtrlCreateMenuItem("ExitScript", $MenuList)
$MenuSep = GUICtrlCreateMenuItem("", $MenuList)
$MenuRestartItem = GUICtrlCreateMenuItem("Restart", $MenuList)
$MenuToggleItem = GUICtrlCreateMenuItem("Toggle", $MenuList)
_GUICtrlListView_SetColumnWidth($ListView , 0, 150)
_GUICtrlListView_SetColumnWidth($ListView , 1, 60)
For $i = 1 to 3
_GUICtrlListView_AddItem($ListView, $arr[$i] , $i,_GUICtrlListView_GetItemCount($ListView) + 9999)
Next
WinMove($Gui, "", 1050, 685)
GUISetState(@SW_SHOW, $Gui)
While 1
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
GUISetState(@SW_HIDE, $Gui)
Case $MenuKIllItem
$cell = ControlListView ($Gui, "", $ListView, "GetSelected")
GUICtrlSendMsg ( $ListView, $LVM_DELETEITEM, $cell -0, 0)
Case $MenuRestartItem
msb('2')
Case $MenuToggleItem
msb('3')
EndSwitch
WEnd
Func _Show() ; CTRL +SHIFT +1
$iState = WinGetState($Gui)
; 8 - активно
If BitAnd($iState, 8) Then
WinSetState($Gui, "", @SW_HIDE); Если активно - спрятать
Else
WinActivate($Gui); пассивно - активировать
EndIf
; 2 - отображается
If Not BitAnd($iState, 2) Then WinSetState($Gui, "", @SW_SHOW) ; Если скрыто - отобразить
; 16 - свернуто
If BitAnd($iState, 16) Then WinSetState($Gui, "", @SW_RESTORE) ; Если свернуто - восстановить
EndFunc
Func msb($message)
MsgBox(4096, "", $message)
EndFunc
While 1
sleep(200)
WEnd