Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
01.08.2003, 10:00
|
|||
|---|---|---|---|
как программно переключить DBEdit от 1го источника данных к другому |
|||
|
#18+
В DataModule1 содержатся: Table1 -> DataSource1; Table2 -> DataSource2; Table3 -> DataSource3; На Form1: DBGrid1,DBGrid2, DBGrid3, DBEdit1, DBEdit2, DBNavigator1 Нужно чтобы при получении фокуса DBGrid1, DBEdit1, DBEdit2 получали данные из DataSource1; при получении фокуса DBGrid2, DBEdit1, DBEdit2 получали данные из DataSource2; при получении фокуса DBGrid3, DBEdit1, DBEdit2 получали данные из DataSource3; Для этого пишу следующий код и вешаю на OnEnter procedure TForm1.DBGrid1Enter(Sender: TObject); begin DBNavigator1.DataSource:=Datamodule1.DataSource1; with DBEdit1 do begin DataSource:=Datamodule1.DataSource1; DataField:='Color'; //имя поля1 таблицы1 end; with DBEdit2 do begin Datasource:=DataModule1.DataSource1; DataField:='Description' //имя поля2 таблицы1 end; end; procedure TForm1.DBGrid2Enter(Sender: TObject); begin DBNavigator1.DataSource:=Datamodule1.DataSource2; with DBEdit1 do begin DataSource:=Datamodule1.DataSource2; DataField:='Defect'; //имя поля1 таблицы2 end; with DBEdit2 do begin DataSource:=Datamodule1.DataSource2; DataField:='Description'; //имя поля2 таблицы2 end; end; procedure TForm1.DBGrid3Enter(Sender: TObject); begin DBNavigator1.DataSource:=Datamodule1.DataSource3; with DBEdit1 do begin DataSource:=Datamodule1.DataSource3; DataField:='Model'; //имя поля1 таблицы3 end; with DBEdit2 do begin DataSource:=Datamodule1.DataSource3; DataField:='Description'; //имя поля2 таблицы3 end; end; но при переключении между гридами выдает следующее сообщение --------------------------- Debugger Exception Notification --------------------------- Project ProjectExample.exe raised exception class EDatabaseError with message 'DBEdit1: Field 'Color' not found'. Process stopped. Use Step or Run to continue. --------------------------- OK Help ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.08.2003, 10:38
|
|||
|---|---|---|---|
|
|||
как программно переключить DBEdit от 1го источника данных к другому |
|||
|
#18+
попробуй Код: plaintext 1. 2. 3. 4. или что-нибудь в этом духе... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.08.2003, 13:27
|
|||
|---|---|---|---|
как программно переключить DBEdit от 1го источника данных к другому |
|||
|
#18+
begin DataSource:=nil; DataField:='Color'; //имя поля1 таблицы1 DataSource:=Datamodule1.DataSource1; end; у меня не получилось, но сработало begin DataField:=''; DataField:='Color'; //имя поля1 таблицы1 DataSource:=Datamodule1.DataSource1; end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
22.08.2003, 23:18
|
|||
|---|---|---|---|
|
|||
как программно переключить DBEdit от 1го источника данных к другому |
|||
|
#18+
Не представляю как это может работать Правильно DBEdit1.DataField:=''; {Если без этого то DBEdit1.DataField имеет старое значение и после следущей таблице такого поля может не быть. Вот вам и Field 'Зозо' not found'.} DBEdit1.DataSource:=Datamodule1.NevDataSource1{Вот теперь меняем} DBEdit1.DataField:='NevString';{И связываем с новым полем} end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=58&tablet=1&tid=2117194]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 253ms |
| total: | 404ms |

| 0 / 0 |
