|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
StringGrid цвет фона
Как закрасить место без ячеек? При изменении размеров формы (например развернуть) появляются области, где нет ячеек. Как их закрасить?
RAD Studio 11/ Заранее благодарен!!! |
#2
|
|||
|
|||
Если мне не изменяет память, то без ковыряния в самом компоненте - никак. Эта область есть окно компонента, а у тебя есть только обработчик отрисовки ячейки. Можно попробовать поставить св-во Color, если оно есть, у компонента, но, во первых, это поменяет также и цвет фона ячеек (что можно перекрыть уже отрисовкой самих ячеек), а во вторых, оно, скорее всего, не будет работать при использовании тем (поведение по умолчанию и что-то мне подсказывает, что темы ты отключать не хочешь).
Да, можно не создавать свой компонент полностью, а обойтись простой заглушкой. Сотственно, тут надо перекрыть либо метод EraseBackground, либо Paint, если первого метода нет или он недоступен. А что бы не создавать и не регистрировать свой компонент можно воспользоваться таким трюком: Код:
unit Unit1; ... type TStringGrid = class(StrGrd.TStringGrid) ... procedure EraseBackground; override; ... end; TForm1 = class(TForm) ... StringGrid1 : TStringGrid; ... end; ... ЗЫ. Имя модуля, где описан исходный TStringGrid, и имя метода написал по памяти, надо проверить точные имена. |