Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.03;
Скачать: CL | DM;

Вниз

Кто поможет? DirectInput организация управления.   Найти похожие ветки 

 
Познователь   (2003-04-22 18:54) [0]

Часто используют функции библиотеки DirectInput для организации
управления. Однако у меня проблема. Есть функция для подготовки
работы с устройством.
...
hRet := DirectInput8Create(hInstance, DIRECTINPUT_VERSION, IID_IDirectInput8, FDI, nil);
if Failed(hRet) then begin
Result := hRet;
Exit
end;

hRet := FDI.CreateDevice (GUID_SysKeyboard, DDIKeyboard, nil);
if Failed(hRet) then begin
Result := hRet;
Exit
end;

---------
Компилирую. Пишет Incompatible types: "TDIDataFormat" and "PDIDataFormat"

hRet := DDIKeyboard.SetDataFormat(c_dfDIKeyboard);
if Failed(hRet) then begin
Result := hRet;
Exit
end;
---------
hRet := DDIKeyboard.SetCooperativeLevel(Handle, DISCL_FOREGROUND or DISCL_EXCLUSIVE);
if Failed(hRet) then begin
Result := hRet;
Exit
end;

Result := DDIKeyboard.Acquire;
end;
...
Перед захватом ус-ва необходимо вызвать метод SetDataFormat объекта, связанного в ус-вом ввода. Описывается формат, в котором
вводимые данные возвращаются ус-вом. Задаем стандартный формат.

В чем же ошибка.


 
cyborg ©   (2003-04-22 20:33) [1]

DDIKeyboard.SetDataFormat(@c_dfDIKeyboard);


 
Познователь   (2003-04-23 13:19) [2]

cyborg
Теперь все ОК. В книге однако этого небыло, т.е. "@". Знать - хорошо, понимать вдвойне хорошо. Интересно это ошибка автора или еще почемуто? Хотя, наверно, это не ошибка.


 
k-man ©   (2003-04-23 15:55) [3]

К вопросу понимания:
Ну вообще я ничего не понимаю в графике, но судя по сообщению компилятора которое ты привел

> Компилирую. Пишет Incompatible types: "TDIDataFormat" and
> "PDIDataFormat"

можно сделать вывод о том что требуется указатель в качестве аргумента. Так как ID типов указателей обычно начинаются с префикса "P" - pointer, в то время как идентификаторы остальных типов данных обычно начинаются с префикса "Т"-Type.
А префикс "@" насколько я знаю в данном случае обозначает указатель на аргумент.
Хотя может я ошибаюсь...


 
cyborg ©   (2003-04-23 17:55) [4]

Проще говоря @ является адресом :)


 
k-man ©   (2003-04-23 22:39) [5]

Ну я об этом и хотел сказать только по возможности пояснив.-)


 
Shurik   (2003-04-27 03:55) [6]

@ - не адрес, а оператор взятия адреса


 
k-man ©   (2003-04-27 15:17) [7]


> Shurik

О таком феномене не слышал. Если быть точным
@ - операция адресации.


 
Shurik   (2003-04-28 04:09) [8]

Э-э-э... Я это и имел в виду :)


 
k-man ©   (2003-04-28 17:12) [9]

В общем разобрались с терминологией-)



Страницы: 1 вся ветка

Текущий архив: 2003.11.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
8-8542
Василий Иванович
2003-07-06 17:43
2003.11.03
Вопрос про Image ы


3-8307
Alex-kosmonavt
2003-10-13 14:32
2003.11.03
не могу выполнить запрос


1-8504
Dimaz-z
2003-10-23 20:10
2003.11.03
Как выводить пропорциональную картину в DBImage?


1-8461
icebeerg
2003-10-24 13:38
2003.11.03
Чтение ярлыка


1-8351
Master
2003-10-23 01:16
2003.11.03
Помогите стиль bsnone как ее можна перетакивать???????