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

Вниз

при заполнении DBGrid ширина (сумма) всех колонок = ширине формы   Найти похожие ветки 

 
Ral'f   (2007-06-18 16:52) [0]

Как сделать, чтобы при заполнении DBGrid, ширина всех колонок автоматически подбиралась под ширину формы? Ширину всех колонок можно принять - одинаковой.
( Query1.Close;                    
Query1.SQL.Clear;            
Query1.SQL.Add("");
Query1.Open;
Query1.FieldByName("Name").DisplayLabel:="Наименование";
Query1.FieldByName("NeName").DisplayLabel:="Прочее";
)


 
zorik ©   (2007-06-18 16:56) [1]

В компоненте TDBGridEh библиотеки EhLib есть свойство AutoFitColWidths


 
Правильный Вася   (2007-06-18 16:58) [2]

забавно будет посмотреть на грид нулевой ширины на форме в 2 пиксела шириной


 
Sergey13 ©   (2007-06-18 16:59) [3]

> [0] Ral"f   (18.06.07 16:52)

Это не очень хорошая затея, ИМХО, если не хочешь от пользвателя пинки получать.


 
Плохиш ©   (2007-06-18 17:02) [4]


> Ral"f   (18.06.07 16:52)  

Слабо, в справке посмотреть описание свойства Width у класса TColumn?


 
Ral'f   (2007-06-20 09:55) [5]

В моей программе BorderStyle = bsSingle, поэтому:
> грид нулевой ширины на форме в 2 пиксела шириной
не увидишь!

> свойства Width у класса TColumn
Настроек DBGrid я не меняю, поэтому, соответственно число Column = 0. А заполняется DBGrid благодаря запросу (см. [0])

Так как бы это всё автоматизировать? я имею ввиду автоподбор ширины колонок.
Или, хотя бы, как, при этом самом заполнении с помощью Query, конкретно указать ширину?


 
novill ©   (2007-06-20 11:00) [6]

> [5] Ral"f   (20.06.07 09:55)
>
> Настроек DBGrid я не меняю, поэтому, соответственно число
> Column = 0. А заполняется DBGrid благодаря запросу

Это значит что колонки создаются после открытия запроса. На соответствующие события и вешай пересчет ширины ячеек.


 
Ral'f   (2007-06-21 17:38) [7]

> Это значит что колонки создаются после открытия запроса. На соответствующие события и вешай пересчет ширины ячеек.

таких запросов несколько, неужели к каждому запросу приписывать?
...
Query1.Close;
и как бы цикл for тут по колонкам поместить?
DBGrid1.Columns.Items[i].Width =100;


 
zorik ©   (2007-06-21 18:09) [8]

DBGrid1.Columns.Count


 
{RASkov} ©   (2007-06-21 18:47) [9]

type TGr = class (TCustomGrid);
procedure TForm1.Button1Click(Sender: TObject);
var N, W, W0: Integer;
begin
 W0:=TGr(DBGrid1).ColWidths[0];
 W:=(DBGrid1.ClientWidth-W0-TGr(DBGrid1).GridLineWidth*(DBGrid1.Columns.Count-1)) div (DBGrid1.Columns.Count);
 for N := 0 to DBGrid1.Columns.Count-1 do DBGrid1.Columns[N].Width:=W;
end;


Может быть (скорее всего:)) я не правильно расчитал W, ну а смысл вроде отвечает на вопрос....



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
15-1180439882
Эй.
2007-05-29 15:58
2007.07.15
Можно ли...


2-1182168612
Krants
2007-06-18 16:10
2007.07.15
иэроглифы при копировании из буфера


15-1181677638
Petr V.Abramov
2007-06-12 23:47
2007.07.15
не существует ОПЕРАТИВНОЙ системы Windows 2003


15-1181827498
oldman
2007-06-14 17:24
2007.07.15
В чем проблеиа с почтой?


15-1181334214
Галинка
2007-06-09 00:23
2007.07.15
Помирить Warkraft II и немецкий вынь ХР