Что нового

Все запущенные окна в список combobox

scanfail

Знающий
Сообщения
244
Репутация
17
Думаю по названию темы вопрос понятен... Хотелось бы пример :-\
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Код:
$Form1 = GUICreate("Form1", 401, 272, 192, 124)
$Combo1 = GUICtrlCreateCombo("Combo1", 88, 72, 250, 25)
$Wins = WinList()
For $i = 1 To $Wins[0][0]
	If Not $Wins[$i][0] = '' Then GUICtrlSetData(-1, $Wins[$i][0] & '|')
Next
GUISetState()

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case -3
			Exit
	EndSwitch
WEnd
 
Автор
S

scanfail

Знающий
Сообщения
244
Репутация
17
Спасибо большое, но это не совсем то... Мне бы хотелось список окон которые в тулбаре виндоуса, а в твоем примере отображается множества процессов, у которых даже и окна нету.
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
А так ?:
Код:
$Form1 = GUICreate("Form1", 401, 272, 192, 124)
$Combo1 = GUICtrlCreateCombo("Combo1", 88, 72, 250, 25)
$Wins = WinList()
For $i = 1 To $Wins[0][0]
    $State = WinGetState($Wins[$i][1])
	If BitAND($State, 58) Then
		If $Wins[$i][0] <> 'Program Manager' Then GUICtrlSetData($Combo1, $Wins[$i][0] & '|')
	EndIf
Next
GUISetState()

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case -3
            Exit
    EndSwitch
WEnd
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,323
Zaramot,
Откуда Вы взяли число 58 (BitAND($State, 58))?
 
Автор
S

scanfail

Знающий
Сообщения
244
Репутация
17
Вот это то что нужно! Спасибо огромное! :D
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Zaramot,
Откуда Вы взяли число 58 (BitAND($State, 58))?
Суммировал значения:
32(развёрнуто) + 16(свёрнуто) + 2(отображается) + 8(активно)

Но можно поставить значение 2 :smile:
 
Верх