Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.21;
Скачать: CL | DM;

Вниз

Названия колонок в DBGrid в 2-а, 3-и ряда   Найти похожие ветки 

 
diabolik_krsk   (2004-10-26 09:23) [0]

Уважаемые мастера. Вопрос такой:
На форме существует DBGrid. Заношу туда названия столбцов (что бы по русски названия были) из базы данных.
При изменении ширины столбца (если название столбца длинное) название "уезжает" за правую границу столбца и не отображается.
Как определить, что ширина столбца меньше ширины названия этого же столбца, и если данное соотношение в True то часть названия переносить во вторую строчку (а если надо и в третью).


 
begin...end ©   (2004-10-26 09:24) [1]

См. справку по API-функции DrawText().


 
Koala ©   (2004-10-26 10:38) [2]

diabolik_krsk   (26.10.04 9:23)
EhDBGrid, там это реализовано


 
diabolik_krsk   (2004-10-27 05:16) [3]

> begin...end ©

Пытался обработать событие DrawText на примере статьи Голубь П.М.:


s := DBGrid1.Columns[0].FieldName;
DrawText(DBGrid1.Canvas.Handle,PChar(s),length(s),Rect,DT_WORDBREAK);


Однако согласно справке описания функции DrawText:

function Windows.DrawText(hdc: HDC; lpString: PChar; nCount: integer; var lpRect: TRect; uFromat: Cardinal):integer;

параметр lpRect: TRect должен быть переменной, а в событии OnDrawColumnCell либо OnDrawDataCell DBGrid"а данный параметр значится как константа. В результате Delphi выдает ошибку компиляции о несовместимости параметра const Rect и var Rect.

Хотя компоненты StrindGrid и DBGrid являются потомками TCustomGrid.

Может есть возможность обойти как то эту проблему??


 
PKT   (2004-10-27 07:03) [4]

var
 R: TRect;
begin
 .........
 R := Rect;
 DrawText(....., R, ....);


 
Думкин ©   (2004-10-27 08:18) [5]

http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=806


 
diabolik_krsk   (2004-10-27 09:12) [6]


> PKT   (27.10.04 07:03) [4]
> var
>  R: TRect;
> begin
>  .........
>  R := Rect;
>  DrawText(....., R, ....);


IMHO данная операция вызывает ошибку при компиляции проекта с сообщением TRec redefined, и что то мне подсказывает что такая операция не "пройдет" через компилятор.


 
diabolik_krsk   (2004-10-27 09:13) [7]


> Думкин ©   (27.10.04 08:18) [5]
> http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=806


Спасибо, интересная статья.



Страницы: 1 вся ветка

Текущий архив: 2004.11.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
6-1094372978
Johnny Raw
2004-09-05 12:29
2004.11.21
время последнего изменения http://www.delphimaster.ru


4-1097117796
December
2004-10-07 06:56
2004.11.21
Получение админстративных прав под Windows NT/2000/XP


1-1099689667
Kolan
2004-11-06 00:21
2004.11.21
Поле предка


1-1099606985
Кто---то
2004-11-05 01:23
2004.11.21
Какая стандартная функция в Дельфи не переводит строку во Float,


3-1098416333
sanek
2004-10-22 07:38
2004.11.21
как с помощью random выбрать запись из таблицы