link9088 link9089 link9090 link9091 link9092 link9093 link9094 link9095 link9096 link9097 link9098 link9099 link9100 link9101 link9102 link9103 link9104 link9105 link9106 link9107 link9108 link9109 link9110 link9111 link9112 link9113 link9114 link9115 link9116 link9117 link9118 link9119 link9120 link9121 link9122 link9123 link9124 link9125 link9126 link9127 link9128 link9129 link9130 link9131 link9132 link9133 link9134 link9135 link9136 link9137 link9138 link9139 link9140 link9141 link9142 link9143 link9144 link9145 link9146 link9147 link9148 link9149 link9150 link9151 link9152 link9153 link9154 link9155 link9156 link9157 link9158 link9159 link9160 link9161 link9162 link9163 link9164 link9165 link9166 link9167 link9168 link9169 link9170 link9171 link9172 link9173 link9174 link9175 link9176 link9177 link9178 link9179 link9180 link9181 link9182 link9183 link9184 link9185 link9186 link9187 link9188 link9189 link9190 link9191 link9192 link9193 link9194 link9195 link9196 link9197 link9198 link9199 link9200 link9201 link9202 link9203 link9204 link9205 link9206 link9207 link9208 link9209 link9210 link9211 link9212 link9213 link9214 link9215 link9216 link9217 link9218 link9219 link9220 link9221 link9222 link9223 link9224 link9225 link9226 link9227 link9228 link9229

Форум — Ответы     (  К темам )
 ?  nike: Как задать "формат" ячейки DBGrid (21-12-2002 22:44:53)
Как задать "формат" ячейки DBGrid ?
Другими словами, есть текстовое поле,
а нужно, чтобы его содержимое отображалось не в одну строку, а допустим, в три.
 Павел (24-12-2002 23:16:11)
Как один из вариантов — используя свойство Grid -> Canvas,
но это сложно, лишний гимор.
Задаете в Grid->Font->Size = 30,
потом в Colums Editor создаете TColumn по нужным полям, и уже в них в свойствах Font задаете нормальный Font->Size = 8,
после чего в обработчике GridDrawColumnCell выводите в нужной ячейке через TextOut, типа

void __fastcall TForm1::DBGrid1DrawColumnCell(TObject *Sender,
const TRect &Rect, int DataCol, TColumn *Column,
TGridDrawState State)
{
DBGrid1->Canvas->FillRect(Rect);
int x,y;
x = Rect.Left + 4; y = Rect.Top+10;
DBGrid1->Canvas->TextOut(x,y,Column->Field->AsString);
DBGrid1->Canvas->TextOut(x,y+20,"А это вторая строчка");
}


Может конечно, есть способ попроще, не знаю — если кто знает, напишите.
 Андрей (28-12-2002 19:12:06)
Можете использовать
Библиотеку EhLib v 2.6 (Смотрите подробное описание в EhLib users guide),
в ней есть удобные компоненты для работы с базами данных.

http://www.farpost.com/personal/dmitryb/RUS/default.htm

Библиотека содержит компоненты для Borland Delphi версии 4, 5, 6 & 7 и Borland C++ Builder версии 4, 5 & 6.

TDBGridEh
TDBGridEh поддерживает всю функциональность TDBGrid'а и добавляет новые возможности следующего содержания:
Возможность выбирать записи, колонки и квадратные области.
Специальные заголовки на несколько столбцов или на всю таблицу
Возможность отображения строки (строк) внизу таблицы с показом сумм, количества записей, значение другого поля или статического текста.
Возможность автоматического выравнивания ширины столбцов так, чтобы сумма ширины всех столбцов была равна ClientWidth
Возможность изменения высоты строк и заголовка
Возможность отображения строк и заголовков с переносом слов
Заголовки колонок могут быть использованы как кнопки и отображать индикатор сортировки
Возможность прерывать длинные строки многоточием в заголовках и строках данных
Lookup list может отображать несколько полей
Непрокручиваемые столбцы
Инкрементный поиск в lookup столбцах
Выпадающий календарь для полей типа TDateField и TDateTimeFIeld.
Возможность показывать картинки из TImageList в зависимости от значения поля
Возможность скрывать и отслеживать вертикальный и горизонтальный строки прокрутки.
Возможность скрывать столбцы
Возможность показывать 3D рамку для замороженных ячеек, ячеек нижнего колонтитула и ячеек данных
Пропорциональная прокрутка бегунка независимо от упорядоченности номеров записей в датасэте.

Эти компоненты есть на диске ALEX SOFT "Компоненты для Delphi 7"
(он показан на первой странице сайта) 65-80 руб в зависимости где покупаете диск
Там много всего и для C++Builder 5/6