![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGrid показено только несколько полей,а как другие поля таблицы [D7, dBase, FoxPro]
ceval © (2004-06-21 19:48:00)Добрый всем вечер!
Подскажите как решить такую задачу
Есть таблица выведена в DBGrid показено только несколько
полей как сделать чтобы принажатии кнопки 'Доп инфо' в
отдельной форме выводились другие поля таблицы в DBtext
Я сделал отдельную форму и при таком коде у меня
нечего неполучилось:
procedure TFmain.InfoClick(Sender: TObject);
begin
Finfo.show;
end;
..........
procedure TFmain.N30Click(Sender: TObject);
begin
......
if pos('Ddd',adotable1.FieldList.Text)<>0 then
Finfo.DBText1.DataField:='Ddd'
else
Finfo.DBText1.DataField:='';
.....
end;
Зарание благодарен !
Соловьев (2004-07-06 09:40:00) [1]в цыкле проходишь по контролам, проверяешь их на принадлежность к классу TDBText и присваиваешь им нужный сорс.
Ceval (2004-07-05 20:07:00) [2]>нормально, можно и так
впринципи можно и так но теперь у меня возникла другая проблема
на пишу так :
..... .. . . . .. .
if Fmain.DBGrid1.DataSource.DataSet.Active then
if Fmain.ADOTable1.TableName='wedpk' then
Dbtext1.DataSource:=Fmain.DataSource1;
Dbtext2.DataSource:=Fmain.DataSource1;
.....
...
....
DBtext1.DataField:='Dnoln'; //начало действия
DBtext2.DataField:='Dodn'; //окончания действия
Ну а если у меня этих DBTEXT 10 штук то так каждую прописывать?!
А МОЖНО КАК-ТО ПЕРЕПИСАТЬ
что нибудь в таком виде < все DBtext>:=Fnaim.DataSource1;
Соловьев (2004-07-01 09:43:00) [3]
> А как быть если по очереди открываешь разные таблицы и указываешь
> их программно
нормально, можно и так
Ceval (2004-06-30 20:55:00) [4]А как быть если по очереди открываешь разные таблицы и указываешь их программно
Соловьев (2004-06-23 09:58:00) [5]
> if pos('X',adotable1.FieldList.Text)<>0 then
> DBText1.DataField:='X'
ЗАЧЕМ??? 5 нога, не кажется Вам?
А не проще просто подключить DBText.DataSourse = DBGrid.DataSourse,
DBText.DataField = Z В дизайне? и все. Откроете форму и будт там Ваши данные...
Ceval (2004-06-23 09:44:00) [6]Суть в том что есть главная рабочия форма на ней лежит DBgrid
и есть таблица (поля Z X C V B N )в DBGrid например вывел Z X V и дальше хочу сделать чтобы принажатии кнопки 'Доп инфо' появлялась модальноя форма в которой выводились другие поля таблицы Z B N в DBtext
Проблема в том как это вывести в отдельную форму ??
p.s Просто если ложишь DBText на главную форму и пишешь такой код
if pos('X',adotable1.FieldList.Text)<>0 then
DBText1.DataField:='X'
то все работает нормально
Соловьев (2004-06-22 17:32:00) [7]
> Оригинальный способ подключения контрола к полю DataSet
> ;-)
действительно очень оригинально. :)
Vlad (2004-06-22 17:15:00) [8]
> Соловьев © (22.06.04 16:08) [2]
Оригинальный способ подключения контрола к полю DataSet ;-)
автору:
if adotable1.FieldList.IndexOf('Ddd') > -1 then
Finfo.DBText1.DataField:='Ddd'
else
Finfo.DBText1.DataField:='';
А вобще-то информации недостаточно.
Сказал бы конкретно что неполучается, т.е. ошибка возникает, если да то какая... итд.
Rem (2004-06-22 17:12:00) [9]В основном DBGrid'е указать всеполя. Для тех колонок, что пока не нужны - Visible := false. Плюс меню для изменения видимости колонок.
Соловьев (2004-06-22 16:08:00) [10]
> нечего неполучилось:
подробнее можно?
> if pos('Ddd',adotable1.FieldList.Text)<>0 then
> Finfo.DBText1.DataField:='Ddd'
> else
> Finfo.DBText1.DataField:='';
я так смысла и не понял зачем этот код
Ceval (2004-06-22 16:06:00) [11]Так кто-нибудь может подсказать!???