Преглед на функциите на TMS Grid Component за FireMonkey (TMSFMXGrid)
Вчера имах късмета да видя какво представляваTMS Grid For Firemonkey и въпреки факта, че в бонус пакета няма източници, не беше трудно да разбера как работи компонентът, а самият компонент ми се стори доста заслужаващ внимание.
Сравняването на стандартния TGrid с TMSFMXGrid би било най-малкото не съвсем правилно, защото. тези компоненти са различни като небето и земята (въпреки че и двете изглеждат решетки), но все пак на някои места в статията ще се позовавам на възможностите наTGrid за по-пълно описание на това какво ще ни даде използването на компонента отTMS Software.
И така, какво е включено в бонус пакета от TMS Software. След стартиране на настройката с компоненти, в палитрата на Delphi XE3 се появи нов раздел „TMS FMX UI“, съдържащ следните компоненти:
TMSFMXGrid компонент (Мрежа)
Казано накратко, компонентътTMSFMXGrid (без допълнителни компоненти, които ще бъдат разгледани по-долу) ви позволява да:
Нека създадем проект за приложение FireMonkey HD и пуснем компонента TMSFMXGrid във формуляра. С настройките по подразбиране нашата мрежа ще изглежда точно като обикновен TStringGrid от VCL:
Както можете да видите на фигурата, можете да зададете фиксирани колони и редове за мрежата (чрез свойстватаFixedColumns иFixedRows ), което между другото е изгодна разлика от стандартната мрежа. Сега нека видим как можем да модифицираме и допълним нашата мрежа. За сложни настройки на мрежата се използва групата свойства Options:
Като начало, нека добавим „заглавие“ и „долен колонтитул“ към нашата мрежа, за това отваряме свойстватаOptions.Header иOptions.Footer и задавамеVisible на стойносттаВярно. В резултат на това нашата мрежа ще приеме следната форма:

Header иFooter са прости примитиви от типTRectangle, които могат да се използват например за поставяне на допълнителни компоненти в мрежата за филтриране на данни, надписи и т.н.
Можем също да зададем алтернативен цвят за редовете на таблицата, като използваме раздела свойстваBands. За разлика от TGrid (който има подобно свойствоAlternatingRowBackground ), тук можем допълнително да посочим броя на последователните редове с нормален цвят и алтернативен. Например фигурата по-долу показва таблица с персонализирани свойства за разделаBands :
Можете да активирате филтриране на данни за колони на мрежата. За да направите това, използвайте раздела свойстваOptions.Filtering, в който са конфигурирани необходимите свойства за филтъра. Фигурата по-долу показва външния вид наTMSFMXGrid с активирано филтриране на данни в колони:

По подобен начин други свойства наTMSFMXGrid могат да бъдат конфигурирани само с няколко щраквания на мишката: външен вид и операции с URL адреси, които са въведени в таблицата, операции с мишката (промяна на размера на редове и колони, превъртане и т.н.), експортиране на настройки в HTML и т.н.
Сега нека видим как можете да добавяте произволни компоненти към клетките на мрежата. Нека, например, в нашата таблица на фигурата по-горе всяка втора клетка във фиксирана колона ще съдържа квадратче за отметка. За да направите това, можете да използвате събитиетоOnGetCellClass, като това: