Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Господа, скажите, как произвольно вкл/выкл обновление TGrid. [D6, Paradox]


Vi0let ©   (2003-12-28 09:06:00) 

Чтобы при текущий набор данных показывался только после того, как юзер устаканится в своих требованиях, условиях отбора, добавлять или нет запись и т.п. ?


jack128   (2003-12-28 22:25:00) [1]


> p.s. jack128, а зачем для ShowModal использовать try ?

это не для showmodal, а для LockWindowUpdate(0); - вызов этой функции должен произойти даже если в диалоге возникнет ошибка..
А вообще - такие вещи нужно знать в обязательномпорядке..


Vi0let   (2003-12-28 19:40:00) [2]

jack128 большой тебе, человеческий санкс
спасибо парни что не бросили в беде
p.s. jack128, а зачем для ShowModal использовать try ?


jack128   (2003-12-28 16:00:00) [3]

Короче если диалог модальный, то сделай так:
LockWindowUpdate(Application.MainForm.Handle);
try
MyDialog.ShowModal;
finally
LockWindowUpdate(0);
end;


Dred2k   (2003-12-28 15:57:00) [4]

А MainForm.Enabled := False перед вызовом диалога не спасет?


sniknik   (2003-12-28 15:54:00) [5]

Vi0let © (28.12.03 15:18) [8]
> jack128
> так грид пустой становится...
а чего тебе нужно?
и так не эдак и эдак не так. ;о))

нет того чего ты хочеш, надо самому чтонибудь придумывать, по обстановке. (2 рекордсета, вместо DBEdit просто Edit...)


Vi0let   (2003-12-28 15:18:00) [6]

jack128
так грид пустой становится...


jack128   (2003-12-28 15:09:00) [7]

MyDbGrid.DataSource.Enabled := False;
Try
MyDialog.ShowModal;
Finally
MyDbGrid.DataSource.Enabled := True;
end;


Vi0let   (2003-12-28 15:02:00) [8]

поправочка:
там запятая после слов "добавления/редактирования записи"


Vi0let   (2003-12-28 15:00:00) [9]

sniknik
метод хорош, но в моём случае нужно дизаблядь только грид
Term, развернуто:
1) для TTable: открывается форма для добавления/редактирования записи на главной форме в гриде все начинает плясать, нужно чтобы результат изменения данных (TTable) отобразился только полсе закрытия формы редактирования. Если использовать DisableControls то контролы на 2-й форме тоже вырубаются.
2) для TQuery: в доп. форме вводятся условия запроса, нажимается ОК - и, например результат запроса пуст (типа нужно ввести другие критерии), а грид на главной форме уже пустой. Даже если потом "Отмена" нажать уже сто раз грид поменяться может (ну некрасиво это)


Term   (2003-12-28 14:27:00) [10]

если показать/отключить передвижения по датасету то
> sniknik © (28.12.03 11:38) [2]

если чтото еще, напиши понятнее, если юзер не задал еще значения параметров для WHERE как он у тебя открыт то?
или напиши понятнее я не пойму чего ты хочеш


Vi0let   (2003-12-28 14:17:00) [11]

Term
датасет уже открыт в котором юзер меняет данные


sniknik   (2003-12-28 11:38:00) [12]

TQuery/Table1.DisableControls
TQuery/Table1.EnableControls
это если двигаешся по набору а юзеру этого видеть не надо и т.д. посмотри может подойдет. в любом случае другого нет. (можно если только самому, копированием рекордсетов к примеру, clone, но в BDE и этого нет)


Term   (2003-12-28 09:36:00) [13]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо