1

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

Пример выведет сообщение по клику на панели задач.


#If MouseIsTrayOver("ahk_class Shell_TrayWnd")
  ~LButton:: MsgBox
  Return
#If

MouseIsTrayOver(WinTitle) {
  MouseGetPos,,, Win
  return WinExist(WinTitle . " ahk_id " . Win)
}

А получится ли сверять в первую очередь не класс окон под курсором, а какой-нибудь контрол, к примеру часов с панели — "TrayClockWClass1"?

2 (изменено: creature.ws, 2012-02-29 12:50:24)

Re: AHK: Контрол и класс окна под курсором

#If MouseIsTrayOver("TrayClockWClass1")
  ~LButton:: MsgBox
  Return
#If
 
MouseIsTrayOver(WinTitle) {
  MouseGetPos,,,, classNN
  return classNN = WinTitle
}

Либо более универсально

#If MouseIsTrayOver("Shell_TrayWnd")
  ~LButton:: MsgBox
  Return
#If
 
MouseIsTrayOver(WinTitle) {
  MouseGetPos,,, hwndWin, ClassNN
  WinGetClass, winClass, ahk_id %hwndWin%
  return ClassNN = WInTitle || winClass = WinTitle
}

3

Re: AHK: Контрол и класс окна под курсором

Полнейший респект!