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

Вниз

как реализовать в Gride выборку отдельных записей CheckBox ом   Найти похожие ветки 

 
MZ   (2007-03-28 09:07) [0]

Уважаемые мастера. Использую DBGridEh.
надо сделать экпорт нескольких записей. Нужные записи пользователь выбирает CheckBox"ом
Пробовал:
(DBGridEh1.Columns[0].CheckBoxes:=true)
Запрос:
Select *, false as IS_ADD
from /Table/
Не получается...
Что я не так делаю?


 
Sergey13 ©   (2007-03-28 09:26) [1]

> Не получается...
Вписать в программу не можешь или что не получается?

Select *, cast(0 as integer) as IS_ADD
from /Table/

Попробуй так. Может и без cast пройдет - не помню.


 
MZ   (2007-03-28 09:42) [2]


> Sergey13 ©   (28.03.07 09:26) [1]
>
> > Не получается...
> Вписать в программу не можешь или что не получается?
>
> Select *, cast(0 as integer) as IS_ADD
> from /Table/
>
> Попробуй так. Может и без cast пройдет - не помню.
>


Увы, не получается. Как только кликаешь по следующей записи, CheckBox становиться false...


 
Sergey13 ©   (2007-03-28 09:48) [3]

> [2] MZ   (28.03.07 09:42)

Ну значит ошибка в 17 строке.


 
MZ   (2007-03-28 09:50) [4]


> Sergey13 ©   (28.03.07 09:48) [3]

Не понял... Поясни...


 
Sergey13 ©   (2007-03-28 09:53) [5]

> [4] MZ   (28.03.07 09:50)

Я тоже не понял как у тебя что работает. Я же твоего кода не видел.


 
MZ   (2007-03-28 10:08) [6]


> Sergey13 ©   (28.03.07 09:53) [5]
>
> > [4] MZ   (28.03.07 09:50)
>
> Я тоже не понял как у тебя что работает. Я же твоего кода
> не видел.
>

Есть набор записей (Select *, cast(0 as integer) as IS_ADD  from /Table/) который отображается в DBGridEh.
DBGridEh1.Columns[0].CheckBoxes:=true;
DBGridEh1.Columns[0].FieldName:="IS_ADD";
В свойстве KeyList стоит 1 для true и 0 для false,
на событии OnCellClick
procedure TSverkaForm.DBGridEh1CellClick(Column: TColumnEh);
begin
if Column.FieldName="IS_ADD" then
begin
IDM.dsSverka.Edit;
if IDM.dsSverkaIS_ADD.Value=0 then
  IDM.dsSverkaIS_ADD.Value:=1 else
  IDM.dsSverkaIS_ADD.Value:=0;
IDM.dsSverka.Post;
end;
end;


Пользователь должен выбрать интересующие его записи CheckBox"ом. Затем
if IDM.dsSverkaIS_ADD.Value=1 then import...

Кликаю по записи-CheckBox cтановиться в True, но как только кликаю по другой записи CheckBox становиться в false...


 
Sergey13 ©   (2007-03-28 10:14) [7]

> procedure TSverkaForm.DBGridEh1CellClick(Column: TColumnEh);
А зачем эта процедура вообще нужна?


 
MZ   (2007-03-28 10:18) [8]


> А зачем эта процедура вообще нужна?
>

Пробовал и с ней и без нее - результат такой же.


 
Ильш ©   (2007-03-28 11:00) [9]

да процедура ваще ахтунг... а в этом GridEh нету что ли такой фичи как DevExpress там можно присвоить занчения при которых chek или uncheck, по сути позволяется использовать для логического поля любый значения...


 
Jan   (2007-03-28 11:05) [10]

вообще всегда такие вещи делались через SelectedRows.


 
Ильш ©   (2007-03-28 11:10) [11]

ну check-rb намного нагляднее и юзабилити выше...
позырил щас свои проекты
Select *, 0  as IS_ADD
from /Table/

вот в этом духе у меня... но тока вот грид DevExpress...



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

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

Наверх




Память: 0.49 MB
Время: 0.017 c
15-1179894396
vajo
2007-05-23 08:26
2007.06.17
Иран на 25 процентов поднял цены на бензин


9-1153471223
ХХХ
2006-07-21 12:40
2007.06.17
Зачем использовать dll в играх?


2-1179931953
olevacho_
2007-05-23 18:52
2007.06.17
Бегущая строка


2-1180090630
SerMaxx
2007-05-25 14:57
2007.06.17
Работа с Access


15-1179590542
homm
2007-05-19 20:02
2007.06.17
DMClient глюки