Плагин SendInput.spf [обсуждение]

Обсуждение программ nnCron и nnCron LITE

Re: Плагин SendInput.spf [обсуждение]

Postby VoidVolker » Fri, 22 Jan 2010, 22:42

Еще раз повторю: читать надо внимательнее.
dx
Specifies the absolute position of the mouse, or the amount of motion since the last mouse event was generated, depending on the value of the dwFlags member. Absolute data is specified as the x coordinate of the mouse; relative data is specified as the number of pixels moved.
dy
Specifies the absolute position of the mouse, or the amount of motion since the last mouse event was generated, depending on the value of the dwFlags member. Absolute data is specified as the y coordinate of the mouse; relative data is specified as the number of pixels moved.


Кстати, есть-ли какая зависимость между введенными координатами и полученными при относительном перемещении? Если я правильно понял вот этот абзац:
The system applies two tests to the specified relative mouse movement. If the specified distance along either the x or y axis is greater than the first mouse threshold value, and the mouse speed is not zero, the system doubles the distance. If the specified distance along either the x or y axis is greater than the second mouse threshold value, and the mouse speed is equal to two, the system doubles the distance that resulted from applying the first threshold test. It is thus possible for the system to multiply specified relative mouse movement along the x or y axis by up to four times.

то получается, что при относительном перемещении курсора ОС может изменить координаты в зависимости от скорости курсора. Хотя у себя я такого не наблюдаю.
Last edited by VoidVolker on Fri, 22 Jan 2010, 22:52, edited 1 time in total.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин SendInput.spf [обсуждение]

Postby Ilya » Fri, 22 Jan 2010, 22:52

Успокойтесь горячие финские парни - а то забаню всех ! :lol:
Я уже писал, но у меня тоже не совсем корректно работает плагин, я тоже попытался почитать МЭСЭДН, вроде всё правильно!
Может л.Билл, чё накосячил!? ;)
А вы ругаетесь!
Ilya
 
Posts: 443
Joined: Mon, 07 Aug 2006, 09:51
Location: Санкт-Петербург

Re: Плагин SendInput.spf [обсуждение]

Postby VoidVolker » Fri, 22 Jan 2010, 22:54

Я ни с кем не ругаюсь - только отвечаю на вопросы.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин SendInput.spf [обсуждение]

Postby VoidVolker » Fri, 22 Jan 2010, 23:07

Ап! Добавил вращение колесика - оказалось была ошибка во флаге, потому и не работало. Теперь работает.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин SendInput.spf [обсуждение]

Postby ascerdfg1 » Sat, 23 Jan 2010, 00:46

:oops:
nncron.exe v 1.93b10 Build 1141
tm.exe v 1.93b10 Build 569
Windows XP (5.1.2600) SP3
Комп без nnCron - груда металла!
User avatar
ascerdfg1
 
Posts: 541
Joined: Thu, 29 Nov 2007, 02:45
Location: г. Алексин

Re: Плагин SendInput.spf [обсуждение]

Postby VoidVolker » Sat, 23 Jan 2010, 00:50

Что такая кислая мина?
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин SendInput.spf [обсуждение]

Postby ascerdfg1 » Sat, 23 Jan 2010, 10:07

стыдно
nncron.exe v 1.93b10 Build 1141
tm.exe v 1.93b10 Build 569
Windows XP (5.1.2600) SP3
Комп без nnCron - груда металла!
User avatar
ascerdfg1
 
Posts: 541
Joined: Thu, 29 Nov 2007, 02:45
Location: г. Алексин

Re: Плагин SendInput.spf [обсуждение]

Postby VoidVolker » Sat, 23 Jan 2010, 10:45

Есть ли какие еще пожелания или замечания? Может есть какие-то часто употребляемые последовательности слов?
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин SendInput.spf [обсуждение]

Postby AlikasS » Sat, 23 Jan 2010, 17:56

попробовал, у меня CURSOR-MOVE отлично позиционирует
User avatar
AlikasS
 
Posts: 1434
Joined: Wed, 28 Jun 2006, 05:39
Location: Khabarovsk

Re: Плагин SendInput.spf [обсуждение]

Postby VoidVolker » Sat, 23 Jan 2010, 18:31

AlikasS удалось локализовать баг с относительным перемещением?
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин SendInput.spf [обсуждение]

Postby AlikasS » Sat, 23 Jan 2010, 18:44

пока нет.
User avatar
AlikasS
 
Posts: 1434
Joined: Wed, 28 Jun 2006, 05:39
Location: Khabarovsk

Re: Плагин SendInput.spf [обсуждение]

Postby dothen » Sun, 10 Jul 2016, 12:07

Кажется удалось.
MSDN wrote:Relative mouse motion is subject to the effects of the mouse speed and the two-mouse threshold values. A user sets these three values with the Pointer Speed slider of the Control Panel's Mouse Properties sheet. You can obtain and set these values using the SystemParametersInfo function.

Соковиков wrote:Относительное движение мыши подчинено настройкам скорости мыши и уровня ускорения. Конечный пользователь устанавливает эти величины, используя программу Mouse (Мышь) в Панели управления (Control Panel). Приложение получает и устанавливает эти значения при помощи функции SystemParametersInfo.

Надо отключить повышенную точность установки указателя.

Image

Ещё замечание по XYMOUSE
Если текущая координата y больше чем заданная y то курсор встанет в y-1

А вот так работает правильно.
Code: Select all
  : XYMOUSE  ( x_absolute  y_absolute -- )
    >R MOUSE-POS >R - R> R> SWAP -
    XYMOUSE+ ;

Я же хотел спросить про AKEYS
Code: Select all
S" йцукен" CRLF S+ S" qwerty" S+ AKEYS
в Блокноте в WordPad в Word по разному печатает CRLF
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58

Re: Плагин SendInput.spf [обсуждение]

Postby VoidVolker » Mon, 11 Jul 2016, 01:15

А в чем именно заключается разность? В любом случае - текст конвертируется в юникод и отправляется в API.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин SendInput.spf [обсуждение]

Postby ANR Daemon » Sun, 24 Jul 2016, 00:41

dothen wrote:Надо отключить повышенную точность установки указателя.

Проще выключить компьютер и рисовать на бумажке тогда.
ANR Daemon
 
Posts: 234
Joined: Mon, 26 Feb 2007, 22:59

Re: Плагин SendInput.spf [обсуждение]

Postby dothen » Thu, 22 Sep 2016, 13:09

VoidVolker wrote:Есть ли какие еще пожелания или замечания?

Замечания:
  1. UKEYS не работает с пустой строкой т.к. граница цикла равна индексу... Нужно ?DO
  2. UKEYS с длинной строкой грузит процессор т.к. в цикле нет паузы.
  3. AKEYS ZKEYS OKEYS преобразуют строку в юникод, при этом выделяется память но нет возможности ее освободить.
Есть такие варианты:
Code: Select all
 10 VALUE ms
 7 VALUE step \ Самый быстрый.(3 чуть медленнее).

\ 100 VALUE ms
\ 31 VALUE step

\ 50 VALUE ms
\ 0 VALUE step  \ Пауза после каждой буквы.

\ Чем больше шаг между паузами и меньше пауза тем больше грузит ЦП.
\ Вычисление шага можно сделать и по другому, я сделал для максимальной скорости.

: UKEYS ( wa wu -- )
\    OVER >R + R> ?DO
    OVER + SWAP ?DO
    I W@ UKEY
    I step AND 0= IF ms PAUSE THEN
    2 +LOOP
;


\ Память автоматически освобождается
: AKEYS  ( a u -- )
    S>UNI OVER SWAP UKEYS FREE THROW ;

VoidVolker wrote:Может есть какие-то часто употребляемые последовательности слов?

У меня есть:
Code: Select all
: CUT         ( -- ) Ctrl( [CHAR] X AKEY )Ctrl ; \ Ctrl+X
: COPY        ( -- ) Ctrl( [CHAR] C AKEY )Ctrl ; \ Ctrl+C
: PASTE       ( -- ) Ctrl( [CHAR] V AKEY )Ctrl ; \ Ctrl+V
: SELECT_ALL  ( -- ) Ctrl( [CHAR] A AKEY )Ctrl ; \ Ctrl+A
: SELECT_LINE ( -- ) Home  Shift(  End  )Shift ;
: DELETE_LINE ( -- ) SELECT_LINE Delete ; \ : DELETE_LINE ( -- ) Ctrl( [CHAR] Y AKEY )Ctrl ; \ Ctrl+Y
: STARTOFWORD ( -- ) Ctrl( Left )Ctrl ;   \ Курсор в начало слова.
: ENDOFWORD   ( -- ) Ctrl( Right )Ctrl ;  \ Курсор в конец слова.
: SELECT_WORD ( -- ) STARTOFWORD Shift( ENDOFWORD )Shift ; \ Выделить слово под курсором, если под курсором пробел то выделить слово левее курсора.
: DELETE_WORD ( -- ) SELECT_WORD Delete ; \ Удалить слово под курсором или слева от курсора.
: SELECT_HOME ( -- ) Shift( Home )Shift ; \ Выделить от курсора до начала строки.
: SELECT_END  ( -- ) Shift( End )Shift ;  \ Выделить от курсора до конца строки.
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58

PreviousNext

Return to nnCron forum (Russian)

Who is online

Users browsing this forum: No registered users and 3 guests