![]() ![]() ![]() |
|
Tato kapitola popisuje jak používat datový ovladač TDBGrid k zobrazování a editaci záznamů datové množiny v tabulkovém formátu mřížky. Tři faktory ovlivňují vzhled zobrazených záznamů v mřížce:
Vlastnost | Význam |
Alignment | Zarovnávání vlevo, vpravo nebo centrování dat položky ve sloupci. Implicitní zdroj: TField::Alignment. |
ButtonStyle | cbsAuto (implicitně) - Zobrazuje rozbalitelný seznam, pokud přiřazená položka je vyhledávací položka nebo pokud vlastnost PickList sloupce obsahuje data. cbsEllipsis - Zobrazuje tlačítko (...) na pravém okraji buňky. Stiskem tlačítka vyvoláme událost OnEditButtonClick mřížky; cbsNone - Sloupec používá pouze normální editační ovladač k editaci dat ve sloupci. |
Color | Specifikuje barvu pozadí buněk sloupce. Pro barvu textu se používá vlastnost písma. Implicitní zdroj: TDBGrid::Color. |
DropDownRows | Počet řádků textu zobrazených v rozbalitelném seznamu. Implicitně: 7. |
Expanded | Specifikuje, zda sloupec je expandován. Aplikováno pouze na sloupce reprezentující ADT a položková pole. |
FieldName | Specifikuje jméno položky, která je přiřazena k tomuto sloupci. Může být prázdná. |
ReadOnly | true - Data ve sloupci nemohou být editována uživatelem; false (implicitně) - Data mohou být editována. |
Width | Specifikuje šířku sloupce v bodech obrazovky. Implicitní zdroj: TField::DisplayWidth. |
Font | Specifikuje použité jméno, jeho velikost a barvu pro texty ve sloupci. Implicitní zdroj: TDBGrid::Font. |
PickList | Obsahuje seznam zobrazovaných hodnot v rozbalovacím seznamu sloupce. |
Title | Nastavuje vlastnosti pro titulek vybraného sloupce. |
Následující tabulka sumarizuje podvlastnosti, které můžeme
specifikovat pro vlastnost Title:
Vlastnost | Význam |
Alignment | Zarovnávání textu titulku sloupce. |
Caption | Specifikuje text zobrazený jako titulek sloupce. Implicitní zdroj: TField::DisplayLabel. |
Color | Specifikuje barvu pozadí použitou k zobrazení buňky titulku sloupce. Implicitní zdroj: TDBGrid::FixedColor. |
Font | Specifikuje použité písmo, jeho velikost a barvu. Implicitní zdroj: TDBGrid::TitleFont. |
Vlastnost | Objekt | Význam |
Expandable | TColumn | Specifikuje, zda sloupec může být expandován k zobrazení podřízených položek v samostatných, editovatelných sloupcích. |
Expanded | TColumn | Specifikuje, zda sloupec je expandován. |
MaxTitleRows | TDBGrid | Specifikuje maximální počet řádků titulku, který může být zobrazen v mřížce. |
ObjectView | TDataSet | Specifikuje zda položka bude zobrazena plošně nebo v objektovém režimu. |
ParentColumn | TColumn | Ukazuje na objekt TColumn, který vlastní sloupce podřízených položek. |
Následující obrázek zobrazuje mřížku s položkou ADT a
položkovým polem. Vlastnost ObjectView datové množiny je nastavena
na false, takže každá podřízená položka má sloupec.
Další obrázek zobrazuje mřížku s položkou ADT a položkovým
polem. Horní obrázek zobrazuje sbalené položky. V tomto stavu je nelze
editovat. Spodní obrázek zobrazuje rozbalené položky. Položky můžeme rozbalovat
a sbalovat kliknutím na šipce na titulním řádku položky.
Vlastnost | Význam |
dgEditing | true (implicitně) - Povoluje editaci, vkládání a rušení záznamů v mřížce; false - Zakazuje editaci, vkládání a rušení záznamů v mřížce. |
dgAlwaysShowEditor | true - když je položka vybraná, pak je ve stavu dsEdit; false (implicitně) - Položka se automaticky neuvádí do stavu dsEdit při výběru. |
dgTitles | true (implicitně) - Zobrazuje jména položek na vrcholu mřížky; false - zobrazování jmen položek je vypnuto. |
dgIndicator | true (implicitně) - Indikátor sloupce je zobrazen v levé části mřížky a indikátor současného záznamu (šipka nalevo od mřížky) je aktivován na ukazování současného záznamu. Při vkládání se šipka mění na hvězdičku a při editaci na I; false - Indikátor sloupce je vypnut. |
dgColumnResize | true (implicitně) - U sloupců můžeme měnit šířku tažením rozdělující čáry v hlavičce. Tato změna se projeví na šířce připojené položkové komponenty. false - Šířku sloupce nelze změnit. |
dgColLines | true (implicitně) - Zobrazuje svislé rozdělovací čáry mezi sloupci; false - Nezobrazuje rozdělující čáry mezi sloupci. |
dgRowLines | true (implicitně) - Zobrazuje vodorovné rozdělovací čáry mezi záznamy; false - Nezobrazuje vodorovné rozdělovací čáry. |
dgTabs | true (implicitně) - Povoluje použití tabulátoru pro přechod mezi položkami záznamu; false - Použití tabulátoru opustí ovladač mřížky. |
dgRowSelect | true - Výběrový řádek je přes celou šířku mřížky; false (implicitně) - Výběrový řádek je zobrazen pouze ve vybrané položce. |
dgAlwaysShowSelection | true (implicitně) - Výběrový řádek v mřížce je vždy viditelný (i když je zaostřený jiný ovladač); false - Výběrový řádek je viditelný pouze, když mřížka má zaostření. |
dgConfirmDelete | true (implicitně) - Potvrzování rušení záznamů; false - Záznamy jsou rušeny bez potvrzení. |
dgCancelOnExit | true (implicitně) - Zrušení provedeného vložení, když zaostření opustí mřížku. Tato volba zabraňuje odesílání částečně vyplněných nebo prázdných záznamů; false - Zabraňuje rušení vkládání. |
dgMultiSelect | true - Umožňuje uživateli vybírat více řádků; false (implicitně) - není umožněn výběr více řádků. |
Událost | Význam |
OnCellClick | Nastává, když uživatel klikne na buňce v mřížce. |
OnColEnter | Nastává, když uživatel se přesune do sloupce v mřížce. |
OnColExit | Nastává, když uživatel opustí sloupec v mřížce. |
OnColumnMoved | Nastává, když uživatel přemístí sloupec na novou pozici. |
OnDblClick | Nastává, když uživatel dvojitě klikne v mřížce. |
OnDragDrop | Nastává, když uživatel dokončí tažení v mřížce. |
OnDragOver | Nastává, když uživatel provádí tažení nad mřížkou. |
OnDrawColumnCell | Nastává, když aplikace potřebuje zobrazovat jednotlivé buňky. |
OnDrawDataCell | (Zastaralé). Nastává, když aplikace potřebuje zobrazit jednotlivé buňky, pokud State je csDefault. |
OnEditButtonClick | Nastává, když uživatel klikne na tlačítko (...) ve sloupci. |
OnEndDrag | Nastává, když uživatel ukončí tažení v mřížce. |
OnEnter | Nastává, když mřížka získá zaostření. |
OnExit | Nastává, když mřížka ztratí zaostření. |
OnKeyDown | Nastává, když uživatel stiskne libovolnou klávesu nebo klávesovou kombinaci na klávesnici při zaostření mřížky. |
OnKeyPress | Nastává, když uživatel stiskne alfanumerickou klávesu na klávesnici při zaostření mřížky. |
OnKeyUp | Nastává, když uživatel uvolní klávesu při zaostření mřížky. |
OnStartDrag | Nastává, když uživatel zahájí tažení v mřížce. |
OnTitleClick | Nastává, když uživatel klikne na titulku sloupce. |
Pro tyto události je mnoho použití. Např. můžeme zapsat obsluhu pro událost OnDblClick, která rozbalí seznam, ve kterém uživatel může volit hodnotu zadávanou do sloupce. Tato obsluha může použít vlastnost SelectedField k určení současného řádku a sloupce.
Vlastnost | Význam |
AllowDelete | true (implicitně) - Dovoluje rušení záznamů; false - Zakazuje rušení záznamů |
AllowInsert | true (implicitně) - Dovoluje vkládání záznamů; false - Zakazuje vkládání záznamů. |
ColCount | Nastavuje počet sloupců mřížky. Implicitně: 1. |
Orientation | goVertical (implicitně) - Zobrazování záznamů odhora dolů; goHorizontel - Zobrazuje záznamy zleva doprava. |
PanelHeight | Nastavuje výšku individuálního panelu. Implicitně: 72. |
PanelWidth | Nastavuje šířku individuálního panelu. Implicitně: 200. |
RowCount | Nastavuje počet zobrazovaných panelů. Implicitně: 3. |
ShowFocus | true (implicitně) - Zobrazuje obdélník zaostření okolo panelu současného záznamu za běhu aplikace; false - nezobrazuje obdélník zaostření. |
Více informací o vlastnostech a metodách TDBCtrlGrid
nalezneme v nápovědě.
![]() ![]() ![]() |
|