Что нового

[Элементы GUI] Нарисовать "толстенькие" ПОЛУПРОЗРАЧНЫЕ границы прямоугольника?

akoulev

Новичок
Сообщения
166
Репутация
2
Версия AutoIt: 3.3.6.1

Описание:
Как нарисовать ПОЛУПРОЗРАЧНЫЕ _границы_ прямоугольника, причём, границы заданной толщины (скажем 3, 5 или 10 пикселей)? Ярко-зелёные (ну, или голубые), полупрозрачные границы, исчезающие по таймауту или клику на этих границах - или же внутри них.
Словом, по клику на этом прямоугольнике (как на собственно рамке, так и внутри неё), обрамление прямоугольника должно исчезнуть. А всё то, что отображалось на этом месте ДО появления прямоугольника - так и должно оставаться на том же самом месте. - Не должно появляться на месте исчезнувшего прямоугольника "белое пятно".

У меня есть примерно такая конструкция (повторяющаяся в очень многих местах скрипта очень много раз):
Код:
$abc=PixelChecksum (100, 200, 300, 400)
;Тра-ля-ля
	If $brom= 1234567890 Then 
		MouseClick("left", "там-то", 1)
	Else 
		MouseClick("left", "сям-то", 1) 
	EndIf

Страшно интересует код, которым надо заменить примечание "Тра-ля-ля", чтобы на экране появились ярко-зелёные прозрачные границы абсолютно прозрачного внутри прямоугольника (границы толщиной 3 пикселя); координаты прямоугольника - почти те же, что и у PixelChecksum, но больше на толщину рамки. Для толщины в 3 пикселя: (97, 197, 303, 403). Эффект "пакета молока, лежащего в обувной коробке": коробка (рамка) должна быть снаружи пакета (прямоугольника). (Ибо я использую PixelChecksum() в цикле, и рамка, попавшая в это поле, полностью разрушит проводимый скриптом анализ содержимого прямоугольника, поменяв это самое содержимое).
Ай нид хелп, плиз!

Примечания:
Но! мне мало только нарисовать этот прямоугольник:
надо, чтобы он ещё и исчезал через какое-то время, заданное в коде (от долей секунды (моргнуть) до ... ну, порядка неск. минут); но ещё круто было бы, чтоб прямоугольник исчезал и от клика на нём.

Hint: прямоугольник - это НЕ квадрат! И координаты прямоугольника берутся из PixelChecksum-а; - больше на толщину рамки.
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5 379
Репутация
2 711
Re: [Автоматизация] Как нарисовать ПРОЗРАЧНЫЕ _границы_ прямоугольника, заданной ширины? (+)

Если честно, то я ничего не понял, совсем.

:wacko:
 
Автор
A

akoulev

Новичок
Сообщения
166
Репутация
2
Re: [Автоматизация] Как нарисовать ПРОЗРАЧНЫЕ _границы_ прямоугольника, заданной ширины? (+)

Yashied сказал(а):
Если честно, то я ничего не понял, совсем.

:wacko:
Перечитал моё сообщение: кажется, я могу, разве что, повторить его. :whistle: Впрочем, перечитав текст в 30-й раз :smile:, и пытаясь смотреть "глазами постороннего", я внёс в исходный текст несколько коррекций, убирающих (на мой взгляд) двояко-понимаемые или размытые выражения. Но, если оно -вдруг- все же так и не стало ясней, то давайте я лучше изложу целиком ситуацию, из которой произрастает эта задача: авось, тогда всё станет прозрачней.
Итак, есть софтина сторонней и, вообще, забугорной фирмы, для управления Очень Важной Железкой. Софтина крутится из-под Java, что накладывает ОЧЕНЬ существенные ограничения на... да, вообще, на всё. Опуская сотню всяко-разных мелких (и не очень) неудобств, отмечу, что из окон этой софтины -в принципе- невозможно считать текст. ВООБЩЕ никакой. Поэтому, общение скрипта с софтиной ведётся посредством вышеупомянутого кода PixelChecksum (). Этот код используется, ну, не 300 раз - но где-то около того. Когда всё работает - тогда всё работает. (с) Я. А вот когда всё начинает рассыпаться... Было бы страшно полезно УВИДЕТЬ: а где же сейчас идёт чтение PixelChecksum-ом пикселей - т.е., где вспыхнул очередной прямоугольник (прозрачный, чтобы видеть всё: как вокруг него, так и непосредственно под ним.) Проблема в том, что написать этот самый прозрачный прямоугольник, "обволакивающий" место анализа PixelChecksum-а, у меня не хватает силёнок, - в связи с чем и прошу помочь.
 

Redline

AutoIT Гуру
Сообщения
506
Репутация
369
Не плоди одинаковых тем - тут добавил решение:
http://autoit-script.ru/index.php?topic=1939.0
 
Верх