Что нового

Отправить сообщение в SysTabControl32

Viktor1703

AutoIT Гуру
Сообщения
1,535
Репутация
413
Возникла маленькая проблемка, есть SysTabControl32 в чужом окне, у которого 7 элементов TabItem, допустим мне нужно нажать 2ой, как сделать?

Пробывал так:

Код:
Global Const $WM_CLASS           = "[CLASS:µTorrent4823DF041B09]"           ; Класс окна
Global Const $CL_CLASS           = "[CLASS:SysTabControl32; INSTANCE:1]"
Global Const $TCM_FIRST          = 0x1300
Global Const $TCM_SETCURFOCUS    = ($TCM_FIRST + 48)
Global Const $TCM_INSERTITEMA    = ($TCM_FIRST + 7)
Global Const $TCM_SETITEMA       = ($TCM_FIRST + 6)
Global Const $TCM_SETPADDING     = ($TCM_FIRST + 43)
While 1
	If WinWaitActive($WM_CLASS) Then ; Ждём нужное нам окно
	    If WinActive($WM_CLASS) Then ; Если окно активно, то запускаем выполнение скрипта
			_SendMessage($CL_CLASS, "Сообщение которое нужно отправить", 2)
	        Exit
	    EndIf	
	EndIf
Wend

Какое сообщение нужно отправить в SysTabControl32 чтобы включилась 2я вкладка?

Или чтоб сильно не заморачиваться, есть меню у чужого окна, нужно нажать "Меню" и "Добавить торрент..." - пробывал, не получалось, после правильного нажатия должно вылезти окно "выберите файл..."
 

VladUs

Скриптер
Сообщения
621
Репутация
181
Viktor1703 [?]
допустим мне нужно нажать 2ой, как сделать?

Допустим так

Код:
#Include <GuiTab.au3>
$hWnd = WinGetHandle("[CLASS:µTorrent4823DF041B09]")
$hSysTab = ControlGetHandle($hWnd,"","[CLASS:SysTabControl32; INSTANCE:1]")
_GUICtrlTab_ClickTab($hSysTab, 1)
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Viktor1703,
Посмотрите еще в справке ControlCommand() команды CurrentTab, TabRight, TabLeft
 
Верх