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

Вниз

Работа с DBGrid   Найти похожие ветки 

 
RebroFF   (2006-09-07 11:10) [0]

Подскажите, пожалуйста, как в гриде реализовать выравнивание столбцов по содержимому


 
Sergey13 ©   (2006-09-07 11:14) [1]

Это как (чтоб не было недопонимания)?


 
zdm ©   (2006-09-07 11:16) [2]

самый простой способ, используй DbGridEh ---свойство AutoFitColWidth=true


 
RebroFF   (2006-09-07 11:16) [3]

:) Что-то типа экселевских таблиц: ширина столбца динамически меняется в сооветствии с длиной наибольшей строки данных в ячейке


 
zdm ©   (2006-09-07 11:18) [4]

если есть возможность ставь EhLib и будет тебе счастье, сэкономишь кучу времени и нервов.... :)))


 
RebroFF   (2006-09-07 11:19) [5]

Сторонние компоненты-это конечно хорошо, но... (Кстати, а где нарыть EHLib?. Я  так понимаю это оттуда?)


 
PSPF2003 ©   (2006-09-07 11:20) [6]

> Кстати, а где нарыть EHLib

В инете


 
zdm ©   (2006-09-07 11:21) [7]

или e-mail свой оставь.....


 
RebroFF   (2006-09-07 11:22) [8]


> > Кстати, а где нарыть EHLib

Спасибо за полный и содержательный ответ. Теперь ни за что не заблужусь:)


 
RebroFF   (2006-09-07 11:23) [9]


> или e-mail свой оставь.....

[email protected]


 
PSPF2003 ©   (2006-09-07 11:23) [10]

http://www.farpost.com/personal/dmitryb/RUS/ehlibrus.exe


 
Sergey13 ©   (2006-09-07 11:23) [11]

> [3] RebroFF   (07.09.06 11:16)

Значит надо определить максимальную длину строки и выставить ширину колонки.
А нафига? Если вдруг данные в одной записи во много раз превышают ширину экрана - заморишься листать. Кроме того - в глазах рябить будет и неудобно - то одна картинка то другая перед глазами.


 
RebroFF   (2006-09-07 11:24) [12]

2PSPF2003
Пасиба.


 
zdm ©   (2006-09-07 11:26) [13]


> RebroFF


лови,, , меня точно посадят с тобой


 
PSPF2003 ©   (2006-09-07 11:27) [14]

Кстати, я может и ошибаюсь, но по моему она платная.


 
zdm ©   (2006-09-07 11:29) [15]


> PSPF2003

А вот я и говорю, что пасадят меня когда-нибудь,,, я ему FullVersion кинул


 
PSPF2003 ©   (2006-09-07 11:32) [16]


> zdm ©

:)))


 
Sergey13 ©   (2006-09-07 11:33) [17]

> [14] PSPF2003 ©   (07.09.06 11:27)

Начиная с 4 версии. До 3.6 - фри.


 
RebroFF   (2006-09-07 11:33) [18]


>
> Значит надо определить максимальную длину строки и выставить
> ширину колонки.
> А нафига? Если вдруг данные в одной записи во много раз
> превышают ширину экрана - заморишься листать. Кроме того
> - в глазах рябить будет и неудобно - то одна картинка то
> другая перед глазами.

Реально, проблема в адаптации грида к различным разрешениям монитора. Вот.


 
Sergey13 ©   (2006-09-07 11:35) [19]

> [18] RebroFF   (07.09.06 11:33)

Не грид надо адаптировать, а форму на которой он лежит.


 
RebroFF   (2006-09-07 11:38) [20]


> Не грид надо адаптировать, а форму на которой он лежит.

Ну да. Сначала проверял разрешение и программно менял его на 1024х768.
Но ведь это не выход.


 
zdm ©   (2006-09-07 11:41) [21]

Если полей которые нужно отобразить очень много, или данные имеют большую длину, то лучше вообще гридом не пользоваться, а допустим,, в гриде отобразить только общую информацию , ну там типа, краткое имя и т.д. а на ,допустим кнопочку "подробно" вызвать форму, где отобразиться подробная инфа, через всякие там Лейблы или Эдиты.


 
RebroFF   (2006-09-07 11:47) [22]


> Если полей которые нужно отобразить очень много, или данные
> имеют большую длину, то лучше вообще гридом не пользоваться,
>  а допустим,, в гриде отобразить только общую информацию
> , ну там типа, краткое имя и т.д. а на ,допустим кнопочку
> "подробно" вызвать форму, где отобразиться подробная инфа,
>  через всякие там Лейблы или Эдиты.
>

Было. Пользователь выразил категорический протест и полное непонимание. В полях даты (8 полей)+фио, цех и должность. А всё-таки ведь как-то ж её (форму) можно, блин, масштабировать...


 
RebroFF   (2006-09-07 11:49) [23]

Всё. Разобрался.


 
zdm ©   (2006-09-07 11:50) [24]

Чего придумал?


 
RebroFF   (2006-09-07 13:13) [25]

Включил ентот модуль в секцию uses каждого модуля и вызываю ScaleForm в
обработчике формы OnCreate, передавая в качестве параметра имя формы.


unit scale;

interface

uses
  Forms, WinTypes, WinProcs, SysUtils;

procedure ScaleForm(Sender: TObject);

implementation

procedure ScaleForm(Sender: TObject);

const

  {разрешения во время разработки}
  DesignScrY: LongInt = 768;
  DesignScrX: LongInt = 1024;
  DesignBorder: LongInt = 4;

var

  SystemScrY: LongInt;
  SystemScrX: LongInt;
  SystemBorder: LongInt;
  OldHeight: LongInt;
  OldWidth: LongInt;

begin

  SystemScrY := GetSystemMetrics(SM_CYSCREEN);
  SystemScrX := GetSystemMetrics(SM_CXSCREEN);
  SystemBorder := GetSystemMetrics(SM_CYFRAME);
  with Sender as TForm do
  begin
    Scaled := True;
    AutoScroll := False;
    Top := Top * SystemScrX div DesignScrX;
    Left := Left * SystemScrX div DesignScrX;
    OldHeight := Height + (DesignBorder - SystemBorder) * 2;
    OldWidth := Width + (DesignBorder - SystemBorder) * 2;
    ScaleBy((OldWidth * SystemScrX div DesignScrX - SystemBorder * 2),
      (OldWidth - DesignBorder * 2));

    Height := OldHeight * SystemScrY div DesignScrY;
    Width := OldWidth * SystemScrX div DesignScrX;
  end;
end;

begin
end.





 
RebroFF   (2006-09-07 13:21) [26]

Блин, но с гридом всё-равно всё по-старому. Все компоненты масштабируются, кроме него. Ф-у-у-х...


 
MsGuns ©   (2006-09-07 14:57) [27]

>Пользователь выразил категорический протест и полное непонимание.

Таким "пользователям", привыкшим к самоизобретенным простыням, нужно советовать купить монитор со средний небоскреб и вертолет чтоб его обозревать.

Лечится просто :
Если "пользователь" из конторы-клиента, то за подобные вытребеньки надо выставлять соответствующие счета, если "по долгу службы", то требовать полгода-год на реализацию.

Есть еще вариант выгрузки в "любимый всеумеющий" Эксель. А там юзер пусть что хочет делает со своей трехметровой таблицей.


 
zdm ©   (2006-09-07 17:44) [28]


> MsGuns ©

ПОЛНОСТЬЮ СОГЛАСЕН,,,, не надо юзеров особенно жаловать,,, это только по началу они возмощаются, а потом привыкают,, и к переодической смене пароля и к интерфейсу программы и т.д. и т.п. ,,, проверено :)))



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

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

Наверх




Память: 0.53 MB
Время: 0.047 c
15-1157346516
Ega23
2006-09-04 09:08
2006.09.24
С Днём рождения! 2 сентября


1-1155316602
wipr
2006-08-11 21:16
2006.09.24
Как изменить определенный байт в файле


2-1157430879
nstur
2006-09-05 08:34
2006.09.24
Перемещение формы не используя заголовок


3-1153308172
DmiSb
2006-07-19 15:22
2006.09.24
Не получается через ADO открыть *.dbf


2-1157630697
XAN
2006-09-07 16:04
2006.09.24
programma iz delphi