HOME ПРИМЕРЫ THANKS НОВИЧКАМ ДОКИ LINKS JavaScript Mail


 
В этот день много лет назад...
23 ноября. В 1922 году (95 лет назад) - Писатель А.С. ГРИН завершает в Петербурге написание фантастической феерии "Алые паруса", посвятив ее своей жене Нине Грин.
 
 

Turbo Pascal Documentation

Процедура TextMode

Модуль Сrt


     Функция: Выбирает указанный текстовый режим.
     Описание: ТехtМоdе(режим : integer)
     Примечания: Определены следующие константы:
       const
          { режимы CRT }
          BW40   = 0;   { 40х25, черно-белый на цветном адаптере }
          C40    = 1;   { 40х25, цветной на цветном адаптере}
          BW80   = 2;   { 80х25, черно-белый на цветном адаптере }
          C80    = 3;   { 80х25, цветной на цветном адаптере}
          Mono   = 7;   { 80х25, черно-белый на одноцветном адаптере }
          Font8x8 = 256; { для адаптеров EGA/VGA (50 строк)}
          C40 = C040;   { для совместимости с версией 3.0 }
          C80 = C080;   { для совместимости с версией 3.0 }

     При указании других значений процедура ТехtМоdе  подра-
зумевает использование С80.
     При вызове процедуры ТехtМоdе сбрасывается текущее окно
и в качестве текушего окна рассматривается вся область экра-
на,  для  DirectVideo  устанавливается  значение  True,  для
CheckShow также устанавливается значение Тruе (если был выб-
ран цветной режим) и текущий текстовый атрибут  сбрасывается
в   нормальное   состояние,   соответствующее   обращению  к
процедуре NormVideo,  а  текущий  видеорежим  сохраняется  в
LastMode. При инициализации программы LastMode получает зна-
чение текущего видеорежима.
     Задание TextMode(LastMode) приводит к тому,  что  вновь
будет  выбран последний активный текстовый режим. Эты бывает
полезно в том случае, когда после использование  графических
средств  (Graph3  или Graph) вы хотите вернуться в текстовый
режим.
     Обращение виде:

     TextMode(c80 + Font8x8)

приведет к тому, что дисплей будет сброшен в состояние,  при
котором  используется 43 строки и 80 позиций в строке и гра-
фический  адаптер  VGA  с   цветным   монитором.   Обращение
TextMode(Lo(LastMode))  всегда выключает 43 или 50-строковые
режимы и сбрасывает дисплей (хотя  его  видеорежим  остается
неизмененным), а вызов:

     TextMode(lo(LastMode)+Font8x8)

оставит видеорежим тем же самым, но сбросит дисплей в 43 или
50-строковый режим.
     Если при загрузке программы не Турбо-Паскале ваша  сис-
тема  находится в 43 или 50-строковом режеме, этот режим бу-
дет сохранен в части инициализации модуля Crt, и переменная,
в  которой  отслеживается максимальное число строк на экране
(WindMax) будет инициализирована правильно.
     Приведем пример "корректной" программы, которая восста-
навливает видеорежим в исходное состояние.

        program Video;
        uses Crt;
        var
          OrigMode : integer;
        begin
          OrigMode := LastMode;  { сохранить исходный режим }
           ...
          TextMode(OrigMode);
        end.

     Заметим, что процедура TextMode не поддерживает  графи-
ческих  режимов. Таким образом TextMode(OrigMode) будет вос-
станавливать  только  те  режимы,   которые   поддерживаются
TextMode.
     Отличия: В версии  3.0  вызов  процедуры  ТехtМоdе  без
параметров теперь соответствует обращению ТехtМоdе(Last).
     Прочее: См. также процедуру RestoreCrt.




HOME