C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Строки StringGrid, Подскажите пожалуйста
Николай
Отправлено: 04.12.2003, 18:41


Дежурный стрелочник

Группа: Участник
Сообщений: 55



Подскажите пожалуйста!

Возможно ли в компоненте StringGrid объединить ячейки в выборочных строках, например,
первая строка имеет пять колонок, вторая — одну;
третья строка имеет пять колонок, четвертая — две.

С уважением, Николай.
Schumi
Отправлено: 04.12.2003, 19:51


Машинист паровоза

Группа: Участник
Сообщений: 206



Вообще-то в компоненте не предусмотрено такая возможность.
Но можно самому переопределить прорисовку.
Если тебе не нужно редакторовать в таблице непосредственно значения,то просто нужно переопределить обработчик OnDrawCell. Можно сделать так:смотри текущую строку,в независимости от столбца (как я понял из твоей задачи),и в зависимости от номера строки меняешь Rect прорисовки на нужное количество ячеек,и рисуешь как хочешь (ествественно сам smile.gif ).
Правда нужно учитывать,что тогда нужно будет прорисовывать всё.
Чтобы избежать можно оставить свойство DefaultDrawing=true.Это значит,что сперва Windows рисует таблицу,а потом ты перерисовываешь нужные ячейки или всу таблицу.Зато тогда можно не заботиться о рисование к примеру границ и т.п.
А если лень,то есть какие-то дополнительные компоненты,типа AdvStringGrid (могу ошибаться),в которых есть всякие нужные и ненужные дополнительные возможности.Может и такое есть.

Вернуться в Вопросы программирования в C++Builder