InitGraph: Porovnání verzí
Skočit na navigaci
Skočit na vyhledávání
(Created page with "Inicializuje grafický systém a přepne hardware do grafického režimu. ;Deklarace procedure InitGraph(var GraphDriver:Integer; var GraphMode: Integer; PathToDriver: strin...") |
|||
(Není zobrazena jedna mezilehlá verze od stejného uživatele.) | |||
Řádek 8: | Řádek 8: | ||
;Poznámky | ;Poznámky | ||
− | :Pokud je parametr | + | :Pokud je parametr GraphDriver rovný [[Detect]], volají se jakékoli uživatelsky definované autodetekční rutiny a potom [[DetectGraph]]. Je-li zjištěn grafický hardware, inicializuje se příslušný driver a zvolí se grafický režim. |
− | :Nenulová hodnota parametru | + | :Nenulová hodnota parametru GraphDriver je považována za číslo driveru. Tento driver je pak zvolen a systém je uveden do grafického režimu, určeného parametrem GraphMode. Pokud tedy takto zabráníte autodetekci, musíte zároveň specifikovat pro požadovaný driver platný parametr GraphMode. |
:PathToDriver udává adresářovou cestu, kde lze najít grafické drivery. Pokud je PathToDriver rovno '', musejí být soubory s drivery v aktuálním adresáři. | :PathToDriver udává adresářovou cestu, kde lze najít grafické drivery. Pokud je PathToDriver rovno '', musejí být soubory s drivery v aktuálním adresáři. | ||
Řádek 20: | Řádek 20: | ||
:Jestliže je paměť pro grafický driver alokovaná na haldě pomocí [[GraphGetMem]], bude automaticky uvolněna při volání procedury [[CloseGraph]]. | :Jestliže je paměť pro grafický driver alokovaná na haldě pomocí [[GraphGetMem]], bude automaticky uvolněna při volání procedury [[CloseGraph]]. | ||
− | :Po volání [[InitGraph]] je | + | :Po volání [[InitGraph]] je GraphDriver nastaven na aktuální grafický driver a GraphMode je nastaven na aktuální grafický režim. |
− | :Pokud dojde k chybě, | + | :Pokud dojde k chybě, GraphDriver i [[GraphResult]] (funkce) vrátí jednu z těchto hodnot konstant grXXXX: grNotDetected, grFileNotFound, grInvalidDriver, grNoLoadMem nebo grInvalidMode. |
;Viz také | ;Viz také |
Aktuální verze z 6. 10. 2012, 20:08
Inicializuje grafický systém a přepne hardware do grafického režimu.
- Deklarace
procedure InitGraph(var GraphDriver:Integer; var GraphMode: Integer; PathToDriver: string);
- Režim
- Reálný, Chráněný
- Poznámky
- Pokud je parametr GraphDriver rovný Detect, volají se jakékoli uživatelsky definované autodetekční rutiny a potom DetectGraph. Je-li zjištěn grafický hardware, inicializuje se příslušný driver a zvolí se grafický režim.
- Nenulová hodnota parametru GraphDriver je považována za číslo driveru. Tento driver je pak zvolen a systém je uveden do grafického režimu, určeného parametrem GraphMode. Pokud tedy takto zabráníte autodetekci, musíte zároveň specifikovat pro požadovaný driver platný parametr GraphMode.
- PathToDriver udává adresářovou cestu, kde lze najít grafické drivery. Pokud je PathToDriver rovno , musejí být soubory s drivery v aktuálním adresáři.
- Normálně InitGraph zavede grafický driver z příslušného souboru .BGI na disku do paměti, alokované voláním GraphGetMem. Alternativou k tomuto dynamickému způsobu zavádění je přilinkovat driverový(é) soubor(y) přímo do vykonatelného souboru programu.
- To provedete tak, že nejprve převedete soubor .BGI na soubor .OBJ (pomocným programem BINOBJ), poté umístíte volání procedury RegisterBGIdriver do zdrojového textu (ještě před volání InitGraph), čímž se driver(y) budou registrovat. Při sestavování programu musíte přilinkovat soubory .OBJ pro všechny registrované drivery. Můžete také zavést driver na haldu (heap) a pak jej zaregistrovat pomocí RegisterBGIdriver.
- Jestliže je paměť pro grafický driver alokovaná na haldě pomocí GraphGetMem, bude automaticky uvolněna při volání procedury CloseGraph.
- Po volání InitGraph je GraphDriver nastaven na aktuální grafický driver a GraphMode je nastaven na aktuální grafický režim.
- Pokud dojde k chybě, GraphDriver i GraphResult (funkce) vrátí jednu z těchto hodnot konstant grXXXX: grNotDetected, grFileNotFound, grInvalidDriver, grNoLoadMem nebo grInvalidMode.
- Viz také
- CloseGraph
Vzorový příklad
{Initgrf.PAS} {Vzorový příklad pro proceduru Initgrf.} uses Graph; var grDriver: Integer; grMode: Integer; ErrCode: Integer; begin grDriver := Detect; InitGraph(grDriver, grMode,' '); ErrCode := GraphResult; if ErrCode = grOk then begin { Udělat nějakou grafiku } Line(0, 0, GetMaxX, GetMaxY); Readln; CloseGraph; end else Writeln('Chyba grafiky: ', GraphErrorMsg(ErrCode)); end.