Компонент Delphi StringGrid









                                           ГЛАВНАЯ           СВОЙСТВА           СОБЫТИЯ           ПРИЁМЫ  ПРОГРАММИРОВАНИЯ




Свойства StringGrid
11. Align
12. Anchors
13. BiDiMode
15. ColCount
16. RowCount
17. Color
19. Ctl3D
10. Cursor
15. DragKind
16. DragMode
17. Enabled
19. FixedCols
20. FixedRows
21. Font
23. Height
26. HelpType
27. Hint
28. Left
29. Name
30. Options
31. PopupMenu
33. ShowHint
34. TabOrder
35. TabStop
36. Tag
37. Top
38. Visible
39. Width




StringGrid Delphi

Свойство DefaultDrawing




   Свойство компонента StringGrid DefaultDrawing типа Boolean управляет возможностью таблицы StringGrid автоматически отрисовывать свои ячейки. В том числе, цвет заливки, 3D-эффект для ячеек фиксированной зоны, выделение выбранной ячейки и т.д.

   Так, при значении свойства DefaultDrawing равном True, при изменении значения свойства Ctl3D, управляющего 3D-эффектами, таблица StringGrid сразу же будет менять свой вид с 3-мерного на плоский (отрисовывать себя автоматически). Теперь установите DefaultDrawing в False - и при изменении Ctl3D таблица при старте программы появится плоской, так как не сможет отрисовать свой объёмный вид даже при Ctl3D = True. Единственное, что будет иметь объём - это внешняя граница таблицы.

   Более того, ячейки выделенной зоны будут такого же цвета как и обычные - таблицы не сможет автоматически отрисовать их цвет. Программно их, конечно, можно раскрасить как угодно. Также изменение свойства DefaultDrawing не мешает помещать в ячейки таблицы StringGrid рисунки.

   Далее, неспособность к отрисовке при DefaultDrawing = False будет проявляться даже в прорисовке линий между строками и столбцами. Попробуйте в работающей программе изменить ширину и высоту строк и столбцов. Линии между строками и столбцами будут вести себя непредсказуемо. Они, конечно, будут послушно перемещаться, но иногда, отпустив кнопку мышки, мы сможем увидеть их "размножение" - на новом месте возникнет линия, но линия на прежнем месте также останется:

Размножение линий в таблице StringGrid На рисунке только одна из линий в тройке является линией между столбцами, остальные - фантомы!

   Наконец, выделение ячеек, имеющих фокус, при DefaultDrawing равном False также станет невозможным. Щёлкая по ячейкам таблицы, мы не увидим никаких изменений, хотя значения

StringGrid1.Col
   и
StringGrid1.Row

будут меняться.


Читайте также:
  • Как поместить изображение в ячейку StringGrid

    Сайт из коллекции Компоненты Delphi    

    Карта сайта