|
|
| Название | ShowWinInfo |
| Имя файла (*.txt) | ShowWinInfo.txt |
| Описание | Выдает информацию об окне, на которое указывает курсор мыши: дескриптор, класс, дочерние окна и пр. |
| Автор | Вахмурка |
| Параметры | время в секундах |
| Вызываемые плагины | file, miscplugin, childwin, osd |
| Иконка |
|
| Версия | 1.0 |
| Дата обновления | 16.09.2005 |
local mpDlgText
local mpDlgCaption = "Window Info"
local mpIcon = "INFORMATION"
local hh, i
for(i = arg(1); i > 0; i = i - 1)
osd.show(i, "INFINITE", "48", "Arial Cyr", "-1", "255 000 000")
wait 1
endfor
osd.hide()
setstring Quote "
local Hand = win.handlefrompoint(xmouse, ymouse)
local Area = win.area(xmouse, ymouse)
local Class = childwin.class(Hand)
local Parent = window("class", childwin.parent(Hand))
local Text = childwin.gettext(Hand)
if(Text != "")
Text = "\nWindow text: " ++ Quote ++ Text ++ Quote
mpDlgText = "Window handle: " ++ Hand ++ "\nWindow class: " ++ Class
mpDlgText = mpDlgText ++ "\nParent window class: " ++ Parent ++ Text
mpDlgText = mpDlgText ++ "\nWindow Area: " ++ Area
flag set 1 2
for(i = 1; 1; i = i + 1)
hh = childwin.handle(Hand, i)
if(hh == "") do
break
else
if(pproflag(1)) do
mpDlgText = mpDlgText ++ "\n___________________________________"
flag clear 1
endif
if(pproflag(2)) do
mpDlgText = mpDlgText ++ "\n\n"
else
flag set 2
endif
mpDlgText = mpDlgText ++ "Child window #" ++ i
mpDlgText = mpDlgText ++ "\n Class: " ++ window("class", hh)
Text = childwin.gettext(hh)
if(Text != "")
mpDlgText = mpDlgText ++ "\n Text: " ++ Text
endif
if(i%10 == 0) do
MiscPlugin.messagebox(1, "&OK")
mpDlgText = ""
flag clear 2
endif
endfor
MiscPlugin.messagebox(1, "&OK")
После запуска скрипта на выполнение в центре экрана начинается обратный отсчет. Начальное значение таймера разумно выбирать равным 5 - этого достаточно, чтобы перейти в нужное окно. Затем укажите на него курсором крысы и узнайте об окне много интересного.
Если слова "дескриптор" или "родительское окно" вам ни о чем не говорят, вряд ли вы сможете извлечь из скрипта что-либо полезное.
Вообще-то данный скрипт не имеет прямого отношения к Total Commander. Однако, во-первых, я его использовал для получения информации именно о его окнах (хотя можно навести крысу, скажем, на окно Microsoft Word), а во-вторых, вызывать скрипт удобнее именно из Total Commander.
Вот что покажет скрипт, если навести крысу на вкладки:
|
На главную |
|
Все о Total Commander |
|
PowerPro |
|
PowerPro & Total Commander |