Важная информация
Показано с 1 по 4 из 4

Тема: Мышь в текстовом режиме

  1. #1 Мышь в текстовом режиме 
    Супер модератор Аватар для Kakos_nonos
    Регистрация
    07.01.2011
    Адрес
    Кубань
    Сообщений
    1,531
    Сказал(а) спасибо
    126
    Поблагодарили 428 раз(а) в 291 сообщениях
    Записей в блоге
    6
    Не подскажите, ли, как в паскале в текстовом режиме использовать мышь.
    А то как в графическом режиме делать, я разобрался, а как с текстовым- нет.
    Заранее спасибо.
    [Ссылки могут видеть только зарегистрированные пользователи. ]
    Ответить с цитированием  
     

  2. #2  
    Гуру Аватар для Konstantin Shcherba
    Регистрация
    08.11.2010
    Сообщений
    1,336
    Сказал(а) спасибо
    26
    Поблагодарили 139 раз(а) в 107 сообщениях
    Записей в блоге
    1
    Смотрите вложение.
    Вложения
    Ответить с цитированием  
     

  3. #3  
    Гуру Аватар для Абадябер
    Регистрация
    09.12.2010
    Адрес
    Беларусь, Минск
    Сообщений
    1,219
    Сказал(а) спасибо
    302
    Поблагодарили 176 раз(а) в 144 сообщениях
    Записей в блоге
    5
    Можно любую работу с мышью реализовать, создав ассемблерную функцию, которая будет отслеживать положение указателя мыши, преобразовать его координаты для каждого режима экрана, и выводить на экран.
    Сама мышь, насколько помню, хорошо программируется с помощью прерывания int 33h

    Вот хороший пример, но не мой
    Код pascal:
    program mousetest;
     uses crt,dos;
     var p1,p2,p3: integer;
         reg:      Registers;
         x,y: word;
     
      begin
      textcolor(7);
      textbackground(0);
      clrscr;
      reg.ax:=$0;
      intr($33,reg);
      reg.ax:=$1;
      intr($33,reg);
    {
      reg.ax:=$A;
      reg.bx:=1;
      reg.cx:=0;
      reg.dx:=7;
    }
      intr($33,reg);
      repeat
           reg.ax:=$3;
           intr($33,reg);
           p1:=reg.bx and 00000001;
           p2:=reg.bx and 00000100;
           p3:=reg.bx and 00000010;
           x:=reg.cx;
           y:=reg.dx;
      gotoxy(60,2);
      writeln('Координаты X и Y');
      gotoxy(65,4);
      writeln(x:3,'  ',y:3);
      if p1>0 then
       begin
       gotoxy(20,10);
       writeln('Нажата левая кнопка');
       sound(440);
       delay(100);
       nosound;
       gotoxy(20,10);
       writeln('                   ');
       end;
      if p2>0 then
       begin
       gotoxy(20,12);
       writeln('Нажата средняя кнопка');
       sound(1000);
       delay(100);
       nosound;
       gotoxy(20,12);
       writeln('                     ');
       end;
      if p3>0 then
       begin
       gotoxy(20,14);
       writeln('Нажата правая кнопка');
       sound(1500);
       delay(100);
       nosound;
       gotoxy(20,14);
       writeln('                    ');
       end;
     
      until keypressed;
      end.
    Дружба-магия-радость!
    Ответить с цитированием  
     

  4. #4  
    Супер модератор Аватар для Kakos_nonos
    Регистрация
    07.01.2011
    Адрес
    Кубань
    Сообщений
    1,531
    Сказал(а) спасибо
    126
    Поблагодарили 428 раз(а) в 291 сообщениях
    Записей в блоге
    6
    Спасибо за советы!
    [Ссылки могут видеть только зарегистрированные пользователи. ]
    Ответить с цитированием  
     

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 0
    Последнее сообщение: 21.03.2012, 00:35
  2. Ошибка в графическом режиме qbasic
    от Роман в разделе QBasic
    Ответов: 5
    Последнее сообщение: 11.08.2011, 00:24
  3. Курсор в текстовом режиме.
    от Kakos_nonos в разделе Turbo Pascal
    Ответов: 2
    Последнее сообщение: 10.03.2011, 22:41
  4. Мышь в QuickBasic
    от pingvin в разделе QBasic
    Ответов: 7
    Последнее сообщение: 13.02.2011, 21:24
  5. PIC17C44 умеет работать в режиме микропроцессора
    от Konstantin Shcherba в разделе Микроконтроллеры
    Ответов: 6
    Последнее сообщение: 24.12.2010, 17:51
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •