прошу прощения что немного не в тему(наверное) я с асамблером сюда оброщаюсьно тем не менее нужна помошь.Сразу к делу:
MOUSE.PAS ( 1.03 килобайт )
Кол-во скачиваний: 470
это модуль который я никак не могу заставить работать с следующей программой:
PROGRAM CHECK;
USES
CRT,GRAPH,DOPFORGR,MOUSE;
VAR
X,Y:INTEGER;
PRINTTEXT:STRING;
BUTTON:TBS;
BEGIN
SHOWMOUSE;
{ALLREGION;}
REPEAT
GETMOUSE(X,Y,BUTTON);
GOTOXY(10,10);
WRITE('X = ',X,'Y = ',Y,' ');
GOTOXY(10,11);
IF LEFT IN BUTTON
THEN WRITE('LEFT KEY')
ELSE WRITE('NO LEFT KEY');
GOTOXY(10,12);
IF RIGHT IN BUTTON
THEN WRITE('RIGHT KEY')
ELSE WRITE('NO RIGHT KEY');
UNTIL KEYPRESSED;
HIDEMOUSE;
READLN;
END.
Во-первых, мыщь не инициализирована, надо в самом начале вызывать функцию InitMouse вот отсюда:
http://forum.pascal.net.ru/index.php?showtopic=2383
Ну, а во-вторых, здесь должны быть Var-параметры, ты же хочешь получить результат через них:
PROCEDURE GETMOUSE(Var X,Y:INTEGER;Var BUTTON:TBS); { <--- }
за PROCEDURE GETMOUSE(Var X,Y:INTEGER;Var BUTTON:TBS); { <--- } спасибо только у меня без InitMouse пошло а зачем он нужен(если в кратце)?
добавил через 5 минут:
сорри всё ясно
У меня появилась ещё одна проблема куда менее предвиденная:
Вот архив с программой:
Архив_WinRAR.rar ( 7.51 килобайт )
Кол-во скачиваний: 368
(Neonmoon.pas исполняемый код программы)
которую я разрабатываю вот уже пол месяца.
недавно начал подсоединять мышь вот по этой инструкции: http://forum.pascal.net.ru/index.php?showtopic=2383
со стандартным видео драйвером всё впорядке - работает правда с 16 цветами,кактолько я подключаю BGI256.BGI меня выкидывает в XP с сообщением "Процессор NTVDM обнаружил недопустимую инструкцию"
и выполнение задачи прекращается. Я пробовал подключать другие драйвера(VESA256,SVGA,...) всё равно ничего не выходит. но когда я закоментирую процедуру SHOWMOUSE в исполняемом коде,(мышь не показывается) зато все остальные процедуры работы с мышью работают без ошибок.скажите что я сделал неправильно?