PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Пульты ДУ (http://pccar.ru/forumdisplay.php?f=164)
-   -   Управление компом кнопками на руле (http://pccar.ru/showthread.php?t=1117)

ghostic 30.04.2009 22:36

Купил такой джойстик, после праздников буду пробовать подсоединять, только пока понятия не имею куда паять провода с руля.

ghostic 07.05.2009 02:14

Собственно разобрался что и куда паять и даже регулировку звука подцепил, но не как не могу понять как в скрипте прописать что бы в приложения avertv активном или не активном можно было посылать нажатие клавиш верх вниз (Up, Down).

Пробовал так.

If Joyx-KeygetDelta <= Jkey-Up and joyx+KeyGetDelta >= jkey_Up
{
ControlSend,, Up, ahk_id %Панель управления AVerTV%
}
при перезапуске скрипта вылетает с ошибкой, ссылаясь на ControlSend строчку.

SBorovkov 07.05.2009 13:21

Цитата:

Сообщение от ghostic (Сообщение 97442)
Собственно разобрался что и куда паять и даже регулировку звука подцепил, но не как не могу понять как в скрипте прописать что бы в приложения avertv активном или не активном можно было посылать нажатие клавиш верх вниз (Up, Down).

Пробовал так.

If Joyx-KeygetDelta <= Jkey-Up and joyx+KeyGetDelta >= jkey_Up
{
ControlSend,, Up, ahk_id %Панель управления AVerTV%
}
при перезапуске скрипта вылетает с ошибкой, ссылаясь на ControlSend строчку.

1. В твоем примере "Up" - текст, который он введет, а не кнопка "вверх". Надо писать {Up}
2. %Панель управления AVerTV% - означает содержимое переменной "Панель управления AVerTV", а ты, думаю, имел ввиду послать текст с таким названием окна.

То есть команда по идее должна выглядеть вот так

ControlSend,,{Up},Панель управления AVerTV

либо

VarContainingID := WinExist("Панель управления AVerTV")
ControlSend,,{Up},ahk_id %VarContainingID%

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

ghostic 08.05.2009 04:13

Цитата:

Сообщение от SBorovkov (Сообщение 97467)
1. В твоем примере "Up" - текст, который он введет, а не кнопка "вверх". Надо писать {Up}
2. %Панель управления AVerTV% - означает содержимое переменной "Панель управления AVerTV", а ты, думаю, имел ввиду послать текст с таким названием окна.

То есть команда по идее должна выглядеть вот так

ControlSend,,{Up},Панель управления AVerTV

либо

VarContainingID := WinExist("Панель управления AVerTV")
ControlSend,,{Up},ahk_id %VarContainingID%

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

Спасибо огромное помогло!
1 и 2 вариант работают.

А можно еще сделать так что бы нажимая на кнопку в неактивное окно или приложения неактивное, оно не ставала активным?

SBorovkov 08.05.2009 12:56

Цитата:

Сообщение от ghostic (Сообщение 97555)
А можно еще сделать так что бы нажимая на кнопку в неактивное окно или приложения неактивное, оно не ставала активным?

По идее если приложение получает события от клавиатуры, оно должно быть активным (не считая хоткеи). Поэтому либо надо искать способ отправить окну команду минуя клавиатуру, либо - перед командой запоминать активное окно
Код:

WinGet, active_id, ID, A
, а затем его восстанавливать
Код:

WinActivate, ahk_id %active_id%
.
Это приводит к противному перемигиванию, особенно если окно, принимающее нажатия очень большое. Можешь попробовать его сначала уменьшить, переместить в незаметное место, используя
Код:

WinMove,Панель управления AVerTV,,0,0,10,10
сразу после того, как окно авертв будет запущено.

Actyon 22.10.2009 17:12

почитал тему, прошелся по ссылкам, скачал архив со скриптами. Куплен был джойстик, перепаен и подсоединен к ремокому.
При нажатии кнопок на руле двигается крестик по оси х. Вопрос такой.- только при нажатии двух кнопок он двигается немного и показывает числа (координату 13, вторая кнопка 15...) но при нажатии других кнопок крестик настройки перемещается максимально вправо и координата везде 250. оставленной крутилкой подстраивал, но позиция не меняется. 250

SBorovkov 22.10.2009 17:35

Цитата:

Сообщение от Actyon (Сообщение 115892)
почитал тему, прошелся по ссылкам, скачал архив со скриптами. Куплен был джойстик, перепаен и подсоединен к ремокому.
При нажатии кнопок на руле двигается крестик по оси х. Вопрос такой.- только при нажатии двух кнопок он двигается немного и показывает числа (координату 13, вторая кнопка 15...) но при нажатии других кнопок крестик настройки перемещается максимально вправо и координата везде 250. оставленной крутилкой подстраивал, но позиция не меняется. 250

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

Aniliellamp 09.11.2009 13:17

Управление компом кнопками на руле
 
Все ты нормально прочитал. До тебя уже кто о жаловался на такую проблему. Может вы на других авто по другому переключали?. Еще кнопками на руле нельзя другой диск поменять. Прийдется привыкать, как есть...

Actyon 09.11.2009 16:51

наверно куплю готовіе решения. уже предлагается ко вниманию. ... померить сопротивления не могу, нечем мерить. ....

Chip 09.11.2009 17:26

Вот универсальный вариант http://www.compcar.ru/forum/showthread.php?t=4640
К данному устройству можно добавить код управления с пульта, энкодера, автоматический регулятор яркости от освещения, измерение температуры и т.д.
Ценник 780руб.


Часовой пояс GMT +4, время: 18:35.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot