Přidáno 2 239 bajtů,
1. 10. 2012, 14:07 Zvolí určitý textový režim.
;Deklarace
procedure TextMode(Mode: Integer);
;Režim
:Reálný, Chráněný
;Poznámky
:Při zavolání [[TextMode]] se aktuální okno nastaví na celou obrazovku, [[DirectVideo]] se nastaví na [[True]], [[CheckSnow]] se nastaví na [[True]], pokud se volí barevný režim, aktuální textový atribut se obnoví na normál, odpovídající volání [[NormVideo]]. Zároveň je dosavadní hodnota textového režimu uložena do proměnné [[LastMode]] (při startu programu dostane tato proměnná hodnotu textového režimu, za kterého byl program spuštěn).
:Voláním [[TextMode]]([[LastMode]]) se vrátíte k minulému textovému režimu, což může být užitečné zejména při ukončení grafického režimu.
:Volání TextMode
TextMode(C80 + Font8x8)
:nastaví na barevném monitoru zobrazovací režim s 43 řádkami a 80 sloupci ([[EGA]]) nebo s 50 řádkami a 80 sloupci ([[VGA]]). Pokud chcete vypnout 43- či 50-řádkový režim, ale jinak nechat režim nezměněný, použijte volání [[TextMode]]([[Lo]]([[LastMode]])). Naopak
TextMode(Lo(LastMode) + Font8x8)
:přepne na režim s větším počtem řádek bez změny ostatních parametrů.
:Pokud je váš system v režimu s 43 nebo 50 řádkami již při startu programu, je tento režim startovacím kódem [[Crt]] zachován včetně správné inicializace proměnné [[WindMax]], která obsahuje počet řádek.
:Následující příklad ukazuje, jak by měl "dobře vychovaný" program zacházet s hodnotou původního textového režimu, aby dokázal při ukončení běhu vrátit uživatele do stejně nastaveného displeje, z jakého program zavolal:
program Video;
uses Crt;
var OrigMode: Integer;
begin
OrigMode := LastMode; { Zapamatování původního
režimu }
...
TextMode(OrigMode);
end.
Vzorový příklad
{ TxtMd.PAS }
{ Příklad na TextMode }
program Video;
{ Přepíná barevný monitor do 40 sloupců na pozadí. Nepracuje na mono adaptéru. }
uses Crt;
var
OrigMode: Integer;
begin
OrigMode := LastMode;
TextMode(CO40);
WriteLn('Velké znaky');
ReadLn;
TextMode(OrigMode);
end.
[[Category:CRT]]
[[Category:Procedúra CRT]]