| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Многострочный текст в StringGrid |
| Автор: artsb 7.2.2009, 11:23 |
| Всем привет! Такая задача: Нужно отображать многострочный текст в ячейке StringGrid'а, причём, размер ячейки должен подгоняться под размер текста. Я уже понял, что многострочный текст StringGrid не отображает. Его нужно рисовать самому. Проблема в том, что я не могу найти свойства Height для конкретной строки и Width для конкретного столбца. Хотя у самого StringGrid'a в опциях можно разрешить изменение размеров строк и столбцов. А следовательно, он их должен где-то хранить... |
| Автор: Usper 7.2.2009, 20:12 |
| Ширина столбца - StringGrid1->ColWidths[№ столбца]. Высота строки - StringGrid1->RowHeights[№ строки]. |
| Автор: THandle 7.2.2009, 21:27 |
| artsb, посмотри эти статью, может быть найдешь что то полезное: http://www.delphikingdom.com/asp/viewitem.asp?catalogid=806 http://www.delphimaster.ru/articles/stringgrid/index.html |
| Автор: artsb 7.2.2009, 21:53 |
| Usper, спасибо. Какой-то я не внимательный. THandle, спасибо, посмотрю. |
| Автор: THandle 8.2.2009, 10:42 |
| Кстати, что интересно, bose, вчера же написал на данную тему у себя в блоге: http://tdelphi.blogspot.com/2009/02/dbgrid.html |
| Автор: artsb 8.2.2009, 19:39 | ||
Спс. В принципе, то же что и по первой ссылке выше |
| Автор: artsb 8.2.2009, 22:34 | ||
Тестовая функция StringGrig1DrawCell выглядит так:
При условии, что есть фиксированные строки и столбцы, код рабочий. Как только убираю их - нормально прорисовывается только первая ячейка (остальные перерисовываются после кликов по ним). Оказывается, при вызове DrawText (когда определяю длину и высоту) для первой ячейки tr заполняется нормально, а при последующих - всякая белебирда(точнее она вообще не заполняется, остаются значения, полученные после создания переменной). Стал думать, из-за чего это может быть... Объявил s глобально - всё стало отлично. Объявил tr глобально - началась таже пляска, только теперь все поля в tr заполнены нулями. Вернул tr обратно - всё нормально. Не пойму, что за чертовщина? Что-то не то с DrawText? ЗЫ код набирал по памяти, так что могут быть ошибки. |
| Автор: artsb 8.2.2009, 23:16 |
Как-то странно всё это... |