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

Вниз

Изменение стиля поведения TDBGrid   Найти похожие ветки 

 
Mr. D.   (2007-04-11 18:46) [0]

Нужно запретить DBGrid возможность перемещения столбцов между собой. У него есть опция dgColumnResize, но при ее отключении теряется возможность также изменять ширину столбцов, а вот это хотелось бы оставить.

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

Как бы настроить поведение грида нужным образом?

P.S. И побочный вопрос, при двойном клике в соответствующем событии как определить, что этот двойной клик произошел по заголовку столбца, а не по самим данным?


 
MsGuns ©   (2007-04-11 20:47) [1]

Изучайте события грида. До изнеможения


 
Mr. D.   (2007-04-11 21:26) [2]

А поконкретнее что, так сложно написать?

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

Вы бы сами сначала изучили, а потом так отвечали...


 
{RASkov}   (2007-04-11 21:33) [3]

type TMyGrid = class(TCustomGrid);
procedure TForm.ButtonClick(Sender: TObject);
begin
 TMyGrid(DBGrid).Options:=TMyGrid(DBGrid).Options-[goColMoving];
end;


 
Чапаев ©   (2007-04-11 21:41) [4]

> [3] {RASkov}   (11.04.07 21:33)
У, шаман... Только в этом примере опции надо в паблик вынести.


 
{RASkov}   (2007-04-12 00:52) [5]

> Только в этом примере опции надо в паблик вынести

Зачем? Один фик DBGrid к "новому" классу приводить... или я не о том совсем, сорри.


 
RDen ©   (2007-04-12 07:21) [6]

procedure TForm1.DBGrid1ColumnMoved(Sender: TObject; FromIndex,
 ToIndex: Integer);
begin
 TDBGrid(Sender).Columns[ToIndex].Index := FromIndex;
end;


 
Чапаев ©   (2007-04-12 10:10) [7]

> [5] {RASkov}   (12.04.07 00:52)
Если просто type TMyGrid = class(TCustomGrid);, свойство Options останется private и до него просто не доберёшься. Кстати, мне лень было класс переобъявлять, я привёл к стринггриду. Работало! ;-)



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

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

Наверх




Память: 0.48 MB
Время: 0.044 c
3-1172565807
Megabyte
2007-02-27 11:43
2007.05.13
Получение разницы между датой/временем


2-1177302656
ArtemESC
2007-04-23 08:30
2007.05.13
Как получить имя сайта, имея IP-адрес?


2-1177416513
Ксандр
2007-04-24 16:08
2007.05.13
SendMessage...


2-1177036858
ArchValentin
2007-04-20 06:40
2007.05.13
Создание прокси-серверов


15-1176097410
Девушка
2007-04-09 09:43
2007.05.13
Итеративный ЖЦ разработки