Цитата Сообщение от Nihil Посмотреть сообщение
Насчет невидимости хатки могу ответить - к сожалению разобраться не сумел пока ещё с ней по DirectX SDK.
Ой...
TDIJoyState2 = packed record
// skipped...
(1) rgdwPOV: Array [0..3] of DWORD; (* POV directions *)
(2) rgbButtons: Array [0..127] of BYTE; (* 128 buttons *)
// skipped...
end;
т.е. со 128 кнопами (стр.2) разобрался, а с 4-мя кнопами хатки (стр.1) нет? Я хоть и не Станиславский, но не верю
Отвечу по пунктам Oleg_BS.

Мне просто в голову не приходило, что такое - тоже необходимо.
Это позволяет сделать аналог шифта (модификатора) на кнопке джоя. Т.е. вешаешь на одну из кнопок - Shift (или Ctrl), на вторую, допустим "m", и получается, что когда жмешь одну кнопу получаешь m, когда ОБЕ (кнопа + кнопа-модификатор) получаешь Shift+m, т.е. кол-во комбинаций удваивается.

Поэтому сделано в билде 1.0.0.51. Переобновил вложение.
Спасибо за оперативность!
Но предыдущий пункт работает не так как хотелось бы. Т.е. хочется, чтобы при нажатии ДВУХ перечисленных выше кнопок, я на выходе получал нажатие Shift+m, т.е. М. Сейчас выходит следующее - (Нажать Shift, отпустить Shift, нажать m, отпустить m)
Вообще говоря было задумано чтобы так тоже работало. Что интересно, у меня-таки оно работает. Попробуйте в другом порядке задать модификаторы - т.е. сначала Shift, потом Ctrl.
Посыпаю голову пеплом :confused: Я написал этот пункт не проверяя. почему то решил, что если не обрабатывается Shift, Ctrl etc., то и комбинаций быть не может. Сорри, все работает!
Пока что для меня сие сложновато.
В этом варианте необходимо использование отдельных потоков - Threads. Надо развиваться в этом русле
Я не знаю как реализована передача нажатий клавы, но почему обычная задержка не подходит?
Не подскажете, как оформить внутри интерфейса?
Первое что приходит в голову без глобальных переделок интерфейса - два дополнительных столбца грида(профиль при нажатии / профиль при отпускании), при клике на которых появляется стандартное окно открытия файла (профиля), и если диалоговое окно открытия файла завершилось по "ОК" - очищаем поля замапленых кнопок, а в соответствующее поле профиля вписываем имя файла профиля.
Но повторюсь, это самое простое решение, которое пришло в голову, скорее всего существуют более "красивые".

И эта-а-а... Мы ж на форуме. "Выкать" мне не обязательно, даже (скажу по секрету) вредно. А то я зазнаюсь и начну требовать тако-о-о-о-го...
Ой, вот последний пункт вообще караул. Это надо сильно много думать
Да и фиг с ним. Как минимум пока Вернемся к этому потом (напоминаю, цель - создание уникальной программы). У меня еще есть несколько идей по обработке осей, но не все сразу

И еще? Что там такого пишется в профиль, что при замапленых ДВУХ кнопках на нажатие он размерчиком в 180 кил?
Зачем туда писать названия джоев?
Как по мне,
1)джои в конфиге должны описываться по номерам. Грубо говоря "Джой1, кнопка 3" Это кстати позволит обмениваться профилями.
2) конфиг должен быть либо .txt, либо *.ini. Судя по наличию config.ini работа с ini-файлами не составляет проблем? Но профиль, при наличии прямых рук, можно будет подправить руцями, да и просто понять что куда замаплено, просто открыв профиль в ноутпаде ;-)

P.S. сам относительно недавно выступал в роли автора софта для ИЛа, и знаю как порой достают "юзеры", которым вечно чего то нехватает, которые просят какую то "х.фигню", которая на мой взгляд нафиг не нужна, и т.д. и т.п.
Так что прошу не обижаться. Я не в коей мере не пытаюсь "учить", я просто идеи генерю, которые можно принимать, можно отбрасывать, или расставлять по приоритетам

P.P.S я бы все таки перенес первый пост в новый топик, и там продолжим. Ибо (что-то мне подсказывает ) тема эта будет развиваться, так к чему выискивать нужные посты среди вопросов о МДжое?