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

Вниз

Проблема с DBGrid   Найти похожие ветки 

 
Юля   (2002-10-30 14:16) [0]

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


 
Aristarh ©   (2002-10-30 14:34) [1]

IMHO
Вряд ли у тебя что-то получится, по крайней мере без особых извращений. Свойство DBGrid1.SelectedRows Read Only. У меня используется ctrl.


 
Юля   (2002-10-30 14:50) [2]

а если поизвращаться, то каким образом?
хотя бы с подсветкой подскажите как сделать? типа - выделить строку красным цветом по двойному нажатию?


 
Григорий Ситнин ©   (2002-10-30 14:52) [3]

Хм... Перекрывать DrawCell с DblClick"ом и хранить список "кликнутых" строк отдельно?


 
Юля   (2002-10-30 14:53) [4]

или хотя бы ячеечку по двойному нажатию?


 
Romkin ©   (2002-10-30 14:55) [5]

Поле сделать дополнительное, в нем признак и хранить, а на OnDrawCell рисовать строку красным цветом, на OnDblClick - менять значение поля (и перерисовывать)


 
Aristarh ©   (2002-10-30 14:56) [6]

>Юля

см. еще раз Григорий Ситнин © (30.10.02 14:52).
Классная идея. Только в таком случае они на самом деле выделены не будут.


 
gek ©   (2002-10-30 15:00) [7]

> Aristarh © (30.10.02 14:56)
Будут будут...


 
Юля   (2002-10-30 15:06) [8]

спасибо усе попробую:)


 
Aristarh ©   (2002-10-30 15:09) [9]

>gek © (30.10.02 15:00)

цветом - да.


 
Юля   (2002-10-30 15:25) [10]

а поподробнее как перекрывать напиши плиз:)


 
Юля   (2002-10-30 15:27) [11]

а поподробнее как перекрывать напишите плиз:)


 
Aristarh ©   (2002-10-30 15:39) [12]

В object inspector:
DefaultDrawing = false

В св-ве OnDrawColumnCell:
(кусок из моей проги, разберешься)

with DBGrid1.Canvas do
begin
if (CATV.quDolg.FieldByName("DisconnectDate").AsDateTime <> 0) and not (gdSelected in State)
then begin
Brush.Color := clRed;
FillRect(Rect);
if (Column.Field.DataType=ftString) or (Column.Field.DataType=ftDateTime)
then TextOut(Rect.Left+2, Rect.Top+2, Column.Field.Text)
else TextOut(Rect.Right-TextWidth(Column.Field.Text)-3, Rect.Top+2, Column.Field.Text);
end
else DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);

end; // with


 
Юля   (2002-10-31 07:49) [13]

> Aristarh © (30.10.02 15:39)
большое спасибо!



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

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

Наверх




Память: 0.49 MB
Время: 0.012 c
7-34271
John Eagle
2002-09-09 17:20
2002.11.11
убить поток


14-34168
han_malign(damn it all)
2002-10-21 13:52
2002.11.11
Не вводил я никакого пароля, как мне под своим ником писать


4-34295
Xemax
2002-09-29 20:20
2002.11.11
Как запустить процесс с провами system ?


1-33962
Tea_pot
2002-11-01 12:28
2002.11.11
Пишу games mahgong, и пытаюсь загрузить много Bitmap-ов в память


1-34031
Incognito
2002-11-02 02:33
2002.11.11
Работа с файлами