Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Object Pascal: кроссплатформенные технологии > Как в Паскале скрыть курсор


Автор: July 8.11.2004, 20:48
Один мой друг - творческая личность пытается писать игрушки на Паскале 7.0 в текстовом режиме и для полного счастья ему не хватает одного - как скрыть мигающий курсор. Говорит что закрасить его черным цветом это не выход. Как это можно сделать?

Автор: Zero 8.11.2004, 20:58
Ну попробуй написать так:
Скрыть:
Код

asm
  mov ah,01;
  mov cx,$2000;
  int 10h
end;

Показать:
Код

asm
  mov ah,01;
  mov cx,$0fff;
  int 10h
end;

Автор: Dimich 11.11.2004, 17:10
Согласен! Классический способ. А можно еще и за пределы видимой части экрана его установить, например в позицию с координатами (100,100). Правда GotoXY не прокатит, надо на асме писать (уже подзабыл номера функций, но могу глянуть, если сами не накопаете.......)

Автор: MacTep 18.11.2004, 23:15
Я это делал так:
Код

procedure CursorOff; assembler;
asm
 mov ah,1
 mov cx,2020h
 int 10h
end;

procedure CursorOn; assembler;
asm
 mov ah,1
 mov cx,0607h
 int 10h
end;
Только не знаю, вроде это разные вещи!

Автор: Zero 20.11.2004, 00:25
Мастер, ты можно сказать переписал мой код, какой в этом смысл???
Цитата
Только не знаю, вроде это разные вещи!

Конечно разные...
Код

mov cx,***

Эта строка и устанавливает размер курсора...

Автор: MacTep 20.11.2004, 08:15
Цитата
Мастер, ты можно сказать переписал мой код, какой в этом смысл???
Да нет, не переписывал я твой код. Ты сам написал:
Цитата
Конечно разные...

Автор: Zero 20.11.2004, 12:04
Да я это имел ввиду, при ответе на твой вопрос, ты ведь сам скинул 2 кода с разными мовами...

Автор: Dimich 30.11.2004, 15:45
Вот, обещал еще один вариант (можно воспользоваться функцией установки курсора в позицию экрана):
Код

 asm
   MOV  AH, 02     {  ф-я 02 - установка курсора в позицию экрана}
   MOV  BH, 00     {  Видеостраница 0}
   MOV  DH, 255   {  Строка 255 - за границами экрана! }
   MOV  DL, 12     {  Столбец 12 }
   INT  10H     {  вызываем ф-ю BIOS}
 end

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)