![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBCtrlGrid [D7, MSSQL]
satyakama © (2003-07-18 13:39:00)Я использую DBCtrlGrid для отображения данных из БД, но мне нужно чтобы число DBEdit для каждой строки было различным, т.е. например, первая запись 2-DBEdit, вторая 4-DBEdit и т.д. В обработчике OnPaintPanel следующий код:
procedure TMainFrm.dbcgPaintPanel(DBCtrlGrid: TDBCtrlGrid;
Index: Integer);
begin
if dm.adsGoType.Locate("id", dm.adsGoLocoGoType.Value, []) then
begin
if dm.adsGoTypetype.AsInteger = 1 then
begin
DBEdit100.Visible := True;
DBEdit101.Visible := True;
DBEdit102.Visible := True;
DBEdit103.Visible := True;
end else
begin
DBEdit100.Visible := False;
DBEdit101.Visible := False;
DBEdit102.Visible := False;
DBEdit103.Visible := False;
end;
end;
end;
Проблема в том, что когда курсор находиться на исчезающем поле и я переключаюсь на другое приложения а затем возвращаюсь, то фокус теряется и значение в DBEdit исчезает, теперь если кликнуть мышкой то все появляется. Кроме того это как-то медменно работае.
Если кто знает, как с этим бороться или может есть коспоненты аналогичные TDBCtrlGrid, то напишите. Заранее благодарен.
ЮЮ (2003-07-18 13:47:00) [1]оставить в покое DBCtrlGrid и редактировать немного встороне от DBGrida или на отдельной форме, пряча ненужные DBControl-ы