|
Модераторы: Poseidon, Snowy, bems, MetalFan |
|
varra |
|
|||
Unregistered |
нужно установить свой-во TField.Alignment:=taCenter для всех полей всех таблиц,отображаемых в гриде. как? в цикле?? или,может, есть другой способ центрирования?..
|
|||
|
||||
Lobsang |
|
|||
Unregistered |
Три переключателя РадиоБатон. Свойсвто TAG каждого относится с соответствующим значением типа TAligment.
Так что твой цикл сокращается только до прохода по всем столбцам, а не по каждой ячейки в отдельности. With DBGrid1 do begin For i:=0 to FieldCount-1 do Fields[i].Aligment := TAligment ((Sender as TRadioButton).Tag); end; end; |
|||
|
||||
varra |
|
|||
Unregistered |
ничего не понимаю...
procedure TForm1.N9Click(Sender: TObject); begin ... DBGridEh1.Visible:=true; TextToCenter(DBGridEh1); end; procedure TForm1.TextToCenter(DBGrid: TDBGridEh); var k:integer; begin with DBGrid do begin for k:=0 to FieldCount-1 do Fields[k].Alignment:= taCenter; end; end; не работает |
|||
|
||||
Cashey |
|
|||
Бессмертный Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: 2 Всего: 60 |
А ты попробуй на Grid'е из стандартной библиотеки
Работает успешно! -------------------- библия учит любить ближнего, а камасутра обучает как именно |
|||
|
||||
varra |
|
|||
Unregistered |
дык используется уже DBGridEH (в силу наличия ряда удобных и нужных в проекте "штучек"), я не могу вернуться к стандартному Grid'у!
|
|||
|
||||
Lobsang |
|
|||
Unregistered |
А Что это за компонент и чего он дает за "штучки"?
|
|||
|
||||
varra |
|
|||
Unregistered |
подробности тут: DBGridEh и не только
|
|||
|
||||
Dapo |
|
|||
Опытный Профиль Группа: Участник Сообщений: 417 Регистрация: 18.4.2002 Репутация: нет Всего: 1 |
Каким образом не работает-то? Где ошибка? Fields[i] - прямая ссылка на поле датасет-а подключенного к твоему гриду. Причем, совсем не обязательно, что Columns[i] == Fields[i] (я имею в виду отображаемые и содержащиеся данные). Может тебе именно со столбцами DBGridEh помудрить? Я с этим компонентом не работал и не знаю как он данные показывает, от чего наследуется? Может и "в ручную" придется данные отображать...
|
|||
|
||||
varra |
|
|||
Unregistered |
>Каким образом не работает-то?
не центрируется текст >от чего наследуется TCustomGrid -> TCustomDBGridEh -> TDBGridEh >Может и "в ручную" придется данные отображать... то есть? |
|||
|
||||
varra |
|
|||
Unregistered |
вот что интересно:
procedure TForm1.N9Click(Sender: TObject); begin ... (ADODataSet1.Fields.FieldByName('Check') as TBooleanField).DisplayWidth:=2;//работает ... ADODataSet1.Fields.FieldByName('Цена').Alignment:=taCenter;//не работает ... end; |
|||
|
||||
Dapo |
|
|||
Опытный Профиль Группа: Участник Сообщений: 417 Регистрация: 18.4.2002 Репутация: нет Всего: 1 |
Обрабатывать OnDrawColumnCell или OnDrawDataCell. >ADODataSet1.Fields.FieldByName('Цена').Alignment:=taCenter; Здесь попробуй опустить Fields или FieldByName. |
|||
|
||||
varra |
|
|||
Unregistered |
не знаю, насколько рационально, но работает(!) при следующем коде:
procedure TForm1.DBGridEh1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumnEh; State: TGridDrawState); var t,r:integer; begin ... t:=TDBGridEh(Sender).Canvas.TextWidth(Column.Field.DisplayText);//длина отображаемого значения r:=Rect.Right - Rect.Left;//длина прямоугольника TDBGridEh(Sender).Canvas.TextOut(Rect.Left+round((r-t)*0.5), Rect.Top+2,Column.Field.Text); end; |
|||
|
||||
Dapo |
|
|||
Опытный Профиль Группа: Участник Сообщений: 417 Регистрация: 18.4.2002 Репутация: нет Всего: 1 |
Видимо этот компонент не "смотрит" на свойство Alignment для полей.
|
|||
|
||||
Dapo |
|
|||
Опытный Профиль Группа: Участник Сообщений: 417 Регистрация: 18.4.2002 Репутация: нет Всего: 1 |
Видимо этот компонент не "смотрит" на свойство Alignment для полей.
|
|||
|
||||
Noubpoeno |
|
|||
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 9.12.2022 Репутация: нет Всего: нет |
Модератор: Сообщение скрыто. |
|||
|
||||
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |