Автор Тема: Расширенный функционал (библиотека)  (Прочитано 184 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Сообщений: 3742
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • Просмотр профиля
Расширенный функционал (библиотека)
« : Октябрь 05, 2021, 06:39:12 pm »
Продолжаем интеграцию.

Вернулся к одной заброшенной библиотеке. Потихоньку её переделываю под свежую версию кликера. Попутно добавляя функционал.

Скачать CMTools_v1.4.0

В свой проект кидаем папку CMTools со всем содержимым.
Код: Clickermann
  1. // Подключение
  2. #include "CMTools\CMTools_CMS.cms"

Функции:
Можно открыть файл "CMTools\CMTools_CMS.cms" и почитать какие есть функции и что они принимают и отдают.

1.
Код: Clickermann
  1. // получить дескриптор окна (hWnd)
  2. CME_WinGetHandle("[CLASS:Notepad++]", "")

2.
Код: Clickermann
  1. // получает дескриптор окна рабочего стола (hWnd)
  2. // на данной версии почему-то получает другой hwnd
  3. CME_GetDesktopWindow()

3.
Код: Clickermann
  1. // получает PID окна
  2. CME_WinGetProcess("[CLASS:Notepad++]", "")

4.
Код: Clickermann
  1. // получает PID окна Clickermann-а
  2. CME_WinGetProcessCM()

5.
Код: Clickermann
  1. // получает состояние указанного окна
  2. CME_WinGetState("[CLASS:Notepad++]", "")

6.
Код: Clickermann
  1. // Ставит окно поверх всех окон
  2. CME_WinSetOnTop("[CLASS:Notepad++]", 1)

7.
Код: Clickermann
  1. // Устанавливает прозрачность окна. 255 = непрозрачно, 0 = прозрачно (невидимое)
  2. CME_WinSetTrans("[CLASS:Notepad++]", 1)

8.
Код: Clickermann
  1. // отслеживаем WheelScroll любое движение колеса мыши
  2. CME_MouseWheelScrollEvent(1, 0, 0)
Аргументы вызова:
первый  1/0 - запустить/остановить отслеживание сообщений WheelScroll
второй   0/hwnd  можно указать hwnd окна для которого будут отслеживаться сообщения
третий   1/0  блокировать/НЕ блокировать события. Если блокировать, события не будут передаваться окнам.

При событии:
переменной $WheelScrollEvent присваивается значение 1  (сбрасывать в 0 нужно самому, когда это нужно)

9.
Код: Clickermann
  1. // отслеживаем WheelScroll UpDown раздельное вверх/вниз вращение колеса мыши
  2. CME_MouseWheelScrollEventUpDown(1, 0, 0)
Аргументы вызова:
Такие же, как и в функции CME_MouseWheelScrollEvent

При событии:
переменной $WheelScrollEvent присваивается значение 2 - вверх или 3 - вниз (сбрасывать в 0 нужно самому, когда это нужно)

10.
Код: Clickermann
  1. // отслеживаем MouseMoveEventUpDown перемещение указателя мыши
  2. CME_MouseMoveEvent(1, 0, 0)
Аргументы вызова:
Такие же, как и в функции CME_MouseWheelScrollEvent

При событии:
переменной $MouseMoveEvent присваивается значение 1  (сбрасывать в 0 нужно самому, когда это нужно)

11.
Код: Clickermann
  1. // преобразовать область в GREYSCALE
  2. // работает! Подправил по версию 4.13.14 x32 и x64. Осторожнее с большими областями ))
  3. CME_GREYSCALE($x1, $y1, $x2, $y2)

12.
Код: Clickermann
  1. // применить к области DramContrast - контраст dramster-а
  2. // работает! Подправил по версию 4.13.14 x32 и x64. Осторожнее с большими областями ))
  3. CME_DRAMCONTRAST($x1, $y1, $x2, $y2, $mid, $k)
http://crapware.aidf.org/forum/index.php?topic=2399.msg15031#msg15031


Продолжение следует...

Примеры запуска файлов с тестами:

Test_Windows.png


Test_MouseEvent.cms


Test_Buffer.cms
Original

Greyscale

Dram-Contrast 147, 25

Dram-Contrast 160, 255

« Последнее редактирование: Октябрь 14, 2021, 06:24:16 pm от Vint »


Vint

  • Супермодератор
  • Герой форума
  • *
  • Сообщений: 3742
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • Просмотр профиля
Re: Расширенный функционал (библиотека)
« Ответ #1 : Октябрь 05, 2021, 07:08:13 pm »
Резерв 1


Vint

  • Супермодератор
  • Герой форума
  • *
  • Сообщений: 3742
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • Просмотр профиля
Re: Расширенный функционал (библиотека)
« Ответ #2 : Октябрь 05, 2021, 07:08:20 pm »
Резерв 2


Ivankak

  • Освоившийся
  • **
  • Сообщений: 37
    • Просмотр профиля
Re: Расширенный функционал (библиотека)
« Ответ #3 : Октябрь 12, 2021, 10:49:00 am »
Спасибо. Будем разбираться