1

Тема: AHK: Как определить ID кнопок

Доброго времени суток!

Необходимо определить в mspaint какой код используется при нажатии на кнопку "Сохранить как". Видел в этой теме: Сохранение скриншота в файл код:

PostMessage, 0x111, 57603, 0, , PrScr.bmp - Paint

Вот как определить этот идентификатор для кнопки "Сохранить как"? Пользовался программами Winspector Spy и Window Detective. Но они не могут отследить сообщение WM_COMMAND при нажатии на эти кнопки... У меня Windows 7 и подозреваю, что это связано с новым "навароченным" интерфейсом программы Paint.

2

Re: AHK: Как определить ID кнопок

эмм... Ctrl+S?

3

Re: AHK: Как определить ID кнопок

В том то и дело, что я сначало создаю файл, открываю его и потом жму Ctrl+S и почему-то с каким бы я расширением не делал файл, он его создает в bmp формате, а мне надо png.

Я сделал как-то так:

#NoEnv
SetWorkingDir %A_ScriptDir%
SetKeyDelay -1
DetectHiddenWindows, On
n=1
$^b::
    SetTitleMatchMode, 2
    Send, {PrintScreen}
    Sleep, 100
    Run, mspaint, , Hide
    WinWait, Paint
    WinGet, pnt, ID, Paint
    PostMessage, 0x111, 57637, 0, , ahk_id %pnt%
    PostMessage, 0x111, 57603, 0, , ahk_id %pnt%
    Sleep, 2000
    ControlSetText, Edit1, %n%, ahk_class #32770
    ControlSend, Button1, {Enter}, ahk_class #32770
    PostMessage, 0x111, 57665, 0, , ahk_id %pnt%
    WinWaitClose, %n%.bmp - Paint
    n++
    SetTitleMatchMode, 3
Return

И кстати почему-то не хочет находить окно с названием "Сохранить как" ... но это уже отдельная история...

4

Re: AHK: Как определить ID кнопок

Lawlietb32 пишет:

В том то и дело, что я сначало создаю файл, открываю его и потом жму Ctrl+S и почему-то с каким бы я расширением не делал файл, он его создает в bmp формате, а мне надо png.

Тогда F12.

5

Re: AHK: Как определить ID кнопок

Александр_, Спасибо!)