626

Re: AHK: Замена "Window Spy"

А, ну тогда да. Собственно, как выводить клавиши, решает кодер, а твоё приложение должно определять любые.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

627

Re: AHK: Замена "Window Spy"

Есть приложение в котором не определяются ни имена контролов, ни их HWND. Но AhkSpy успешно выводит часть информации из контрола в поле "Name". Помогите, пожалуйста, выделить часть кода, отвечающего за поле "Name" в отдельный скрипт, чтобы можно было добыть и сохранить все данные из этого контрола. Хорошо бы, чтобы выдало сразу всё, но если поштучно при наведении на каждый участок, как в AhkSpy сейчас, то тоже нормально.

628

Re: AHK: Замена "Window Spy"

Хочу добавить красный цвет кнопки в панели задач при паузе. На 7 работает, протестируйте на ХР и 10 данный код. При запуске, кнопка должна быть красной, на ХР интересует - будет ли ошибка.

ComObjError(false)
Gui, +HWNDhGui
Gui, Show, NA
TaskbarProgress(4, hGui, 100)
Return

TaskbarProgress(state, hwnd, pct = "") {
	static tbl := ComObjCreate("{56FDF344-FD6D-11d0-958A-006097C9A090}", "{ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf}")
	DllCall(NumGet(NumGet(tbl+0)+10*A_PtrSize), "ptr", tbl, "ptr", hwnd, "uint", state)
	if pct !=
		DllCall(NumGet(NumGet(tbl+0)+9*A_PtrSize), "ptr", tbl, "ptr", hwnd, "int64", pct, "int64", 100)
}
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

629

Re: AHK: Замена "Window Spy"

Win XP sp3.

Active Window Info пишет:

&Да
&Нет
Error:  0x80004002 - Интерфейс не поддерживается

Line#
---> 008: tbl := ComObjCreate("{56FDF344-FD6D-11d0-958A-006097C9A090}", "{ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf}")
001: ComObjError(false) 
002: Gui,+HWNDhGui
003: Gui,Show,NA
004: TaskbarProgress(4, hGui, 100) 
005: Return
007: {
009: DllCall(NumGet(NumGet(tbl+0)+10*A_PtrSize), "ptr", tbl, "ptr", hwnd, "uint", state) 

Continue running the script?

630

Re: AHK: Замена "Window Spy"

serzh82saratov пишет:

При запуске, кнопка должна быть красной

Если имеется в виду цвет фона, то на 10 работает.

631

Re: AHK: Замена "Window Spy"

YMP всё верно, спасибо.

ypppu а так нет ошибки:

ComObjError(false)
Gui, +HWNDhGui
Gui, Show, NA
loop 3
	TaskbarProgress(4, hGui, 100) 
Return

TaskbarProgress(state, hwnd, pct = "") {
	static tbl
	if !tbl {
		try tbl := ComObjCreate("{56FDF344-FD6D-11d0-958A-006097C9A090}", "{ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf}")
		catch
			tbl := "error"
	}
	if tbl = error
		Return
	DllCall(NumGet(NumGet(tbl+0)+10*A_PtrSize), "ptr", tbl, "ptr", hwnd, "uint", state)
	if pct !=
		DllCall(NumGet(NumGet(tbl+0)+9*A_PtrSize), "ptr", tbl, "ptr", hwnd, "int64", pct, "int64", 100)
}
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

632

Re: AHK: Замена "Window Spy"

Так просто ничего не происходит. Стандартная кнопка на панели задач.

633

Re: AHK: Замена "Window Spy"

Хорошо, добавил.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

634

Re: AHK: Замена "Window Spy"

В каком формате нужно подставлять переменные для x и y в первой строке?

Acc_ObjectFromPoint(ByRef _idChild_ = "", x = "", y = "")
{
	Acc_Init()
	If	DllCall("oleacc\AccessibleObjectFromPoint", "Int64", x==""||y==""?0*DllCall("GetCursorPos","Int64*",pt)+pt:x&0xFFFFFFFF|y<<32, "Ptr*", pacc, "Ptr", VarSetCapacity(varChild,8+2*A_PtrSize,0)*0+&varChild)=0
	Return	ComObjEnwrap(9,pacc,1), _idChild_:=NumGet(varChild,8,"UInt")
}

Допустим есть координаты

xx := 200 и yy := 100

Пробовал и убирать

x = "",

и подставлять имя переменной в кавычки, и без кавычек, и в окружении процентов, но ничего не добился.
Помогите, пожалуйста!

635

Re: AHK: Замена "Window Spy"

Kurskador, что вам надо, где ваш код и самое главное — причем здесь AhkSpy?
Создавайте новую тему и нормально распишите все.

636

Re: AHK: Замена "Window Spy"

Нашёл открытую подходящую тему. http://forum.script-coding.com/viewtopic.php?id=12053 Название говорящее: "AHK: Acc_ObjectFromPoint без наведения мыши в скрытом окне."
   Но там ответа так и не дали.

Мне достаточно понять как подставлять координаты нужного элемента в Acc_ObjectFromPoint. Не цифрами, а через переменную меняющую значение.
Например

Acc_ObjectFromPoint(ByRef _idChild_ = "", x = "var1", y = "var2")

Устроит и для активного окна. Написал в той теме: http://forum.script-coding.com/viewtopi … 99#p115899

637

Re: AHK: Замена "Window Spy"

serzh82saratov, нет желания добавить опцию "перенос по словам" (word wrap)?

638

Re: AHK: Замена "Window Spy"

В смысле чтобы текст за границу не уходил?
Желания не возникало, но если скажешь как, то может быть добавлю.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

639

Re: AHK: Замена "Window Spy"

В AhkSpy. По типу, как в блокноте.
Это может быть удобно при анализе страниц IE.

640

Re: AHK: Замена "Window Spy"

Так как сделать? Что за опция для HTMLFile?

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

641

Re: AHK: Замена "Window Spy"

Может эта?

word-wrap: break-word;

https://www.w3schools.com/cssref/css3_pr_word-wrap.asp

642

Re: AHK: Замена "Window Spy"

Не знаю, как нибудь попробую.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

643

Re: AHK: Замена "Window Spy"

Malcev
Пока не пробовал, но не выйдет, полоски из красных точек, длинные, будут тогда в несколько строк складыватся.
Я пробовал сделать их как то по ширине окна, но у меня не вышло.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

644 (изменено: Malcev, 2017-11-15 02:07:10)

Re: AHK: Замена "Window Spy"

Чтобы не разбивались на несколько строк можно им вписать таг <nobr>.

<nobr>Текст</nobr>

Либо:

<span style="white-space: nowrap">Long line with no breaks</span>

645

Re: AHK: Замена "Window Spy"

Пробовал для body и pre, не получилось.

<body id='body'`; word-wrap: 'break-word'>

Попробуй сам, линии это:

D2 := "<span id='Delimiter' style='color: " ColorDelimiter "'>" D2 "</span>"
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

646

Re: AHK: Замена "Window Spy"

В твоём коде для меня всё мудрёно.
Вот пример, который у меня работает:

Gui, HTML: Add, ActiveX, w333 h111 vIE, HTMLFile   
Gui, HTML: show   
  
html =
(  
<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>word-break</title>
  <style>
   .col { 
    background: #f0f0f0; /* Цвет фона */
    width: 180px; /* Ширина блока */
    padding: 10px; /* Поля */
    word-break: break-all; /* Перенос слов */ 
   }
  </style>
 </head>
 <body> 
  <div class="col">
   <p>Cуществительное</p>
   <p>высокопревосходительство</p>
   <p>Одушевленное существительное</p>
   <p>одиннадцатиклассница</p>
   <p>Химическое вещество</p>
   <p><nobr>метоксихлордиэтиламинометилбутиламиноакридин</nobr></p>
  </div>
 </body>
</html>
)   
IE.Close()
IE.Write(html)  
return

647

Re: AHK: Замена "Window Spy"

У меня не получается добится того же в коде AhkSpy.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

648

Re: AHK: Замена "Window Spy"

Ну я ж говорю - там мудрёно.
Должно переноситься либо так:

white-space: pre-wrap;
word-wrap: break-word;

Либо так:

word-break: break-all;

649

Re: AHK: Замена "Window Spy"

А что там мудрёно, например в режиме Window на 472 строке формируется HTML, на 511 применяется. Я заменял весь HTML на код из 646, слова не переносятся.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

650

Re: AHK: Замена "Window Spy"

Я не нашел где у тебя в коде пишется html.
Если заменить

oDoc.body.innerHTML := HTML_Win

на

oDoc.Write(HTML_Win)

то переносит.