Lekce 14 - Doplnění - While cyklus, Canvas a tisk
Tak začněme s doplňky:
While (ZATÍMCO)
Je to velmi podobné REPEAT, ale s tím rozdílem, že repeat se nejprve vykoná a potom se zeptá, jestli se má zopakovat. While se nejdřív zeptá, jestli má svůj obsah provést, nebo jestli má přejít na další část programu. Má tvar :
while podmínka do begin neco; end;
Něco-část programu, která se má opakovat
Podmínka-část programu se bude opakovat, pokud platí podmínka
Př.:
while Cislo < 100 do Cislo := Cislo + 1; while Cislo1 < 100 do begin Cislo := Cislo + 1; Cislo2 := Cislo2 - 1; end;
Canvas
Dále se obraťme na Canvas. A zde musím doplnit příkaz: TextRect - S Canvas umíte již spoustu věcí, ale co takhle na ní psát?
Canvas.TextRect(Rect, X, Y, Text);Rect bude TRect, který určí, kde je obdélníkový prostor na Canvasu, na který se bude psát, X a Y jsou souřadnice levého horního rohu textu a Text je string, který se vypíše.
Tisk
A když už umíme TextRect, co takhle se naučit tisknout? Do uses vložte printers. Nyní můžeme použít Printer: TPrinter (nepíše se nikam, už je vytvořen):
- Orientation - orientace papíru: poPortrait (na výšku), poLandscape (na šířku)
- Title - název dokumetu, který tisknete
- PageNumber - číslo stránky, kolikátá se tiskne
- Canvas - to nejdůležitější. Co na něj nakreslíte, to se vytiskne!
A jak vůbec tisknout? Zde máte pár příkazů:
Printer.BeginDoc; // Začne tisknutí Printer.NewPage; // Řekne tiskárně o novou stránku Printer.EndDoc; // Ukončí tisknutí
Příklad tisknutí:
Printer.Title := 'Patvary'; // Určí název dokumetu Printer.BeginDoc; // Začne tisknutí Printer.Canvas.Ellipse(10,10,150,250); // Vytiskne elipsu Printer.NewPage; // Řekne tiskárně o novou stránku Printer.Canvas.Rectagle(10,10,150,250); // Na novou stránku vytiskne obdélník Printer.EndDoc; // Ukončí tisknutí
A to je z doplnění vše...