|
|
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
Имеется три формы На первой размещены несколько Grid-ов, привязанные к своим хранимым процедурам с выносом некоторых полей (на самом деле в проекте таких форм много). На второй ListBox, в который залиты имена Grid-ов из первой формы (реализовано, а лучше имена хранимых процедур - не получается), и Grid, в котором должен показываться полный вынос хранимой процедуры выбранного в ListBox Grid-а Вызов формы 2 осуществляется по горячей клавише, привязанной к форме 3 (главная форма) Как назначить DataSet выбранного Grida-а формы 1 в текущем его состоянии Grid-у формы 2 На FoxPro реализуется на раз (реализовано) Но нужно на Delphi XE (для контроля данных и их ручной правке в MS SQL) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 13:51 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 14:14 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
DimaBr, Вся сложность в том, что обработчик события нажатия горячей клавиши помещен на форму 3 (главную), где кроме меню ничего нет А FindComponent ищет ТОЛЬКО в той форме, из которой вызывается, на конструкции Var AGrid :TDBGrid; и AGrid := Form1.FindComponent(ListBoxGrid.Items[ListBoxGrid.ItemIndex]) as TDBGrid; говорит, что переменная TDBGrid не найдена. Помещать обработчик события нажатия горячей клавиши на каждую форму не реально, их более 2500 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 14:45 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
Тогда ошибка в 17 строке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 14:52 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 15:04 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
Привет. m830: На второй ListBox, в который залиты имена Grid-ов из первой формы (реализовано... : Я бы добавил во 2-ю форму паблик проперти FormName, в котором содержалось бы имя той самой формы, из которой в " листбокс залиты имена гридов " Далее в цикле поиск по формам экрана по имени из проперти FormName, и в найденной форме поиск грида. С уважением, Polesov. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 15:47 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
DimaBr, Сделал, как написано procedure TForm3.ListBox1Click(Sender: TObject); Var AGrid :TDBGrid; begin Edit5.Text:=ListBox1.Items[ListBox1.ItemIndex]; AGrid:= Form3.FindComponent(ListBox1.Items[ListBox1.ItemIndex]) as TDBGrid; DBGrid1.DataSource:=AGrid.DataSource; end; Доходит строки AGrid:= Form3.FindComponent(ListBox1.Items[ListBox1.ItemIndex]) as TDBGrid; и на ней обрывается с ошибкой Access violation at addres 004C3DAF in module 'Project2.exe'. Read of addres 00000010. (первое упоминание AGrid, если впереди добавить еще упоминание AGrid , например Edit5.Text:=AGrid.Name; обрываться будет на ней) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 16:57 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
m830, авторprocedure TForm 3 .ListBox1Click(Sender: TObject); ... AGrid:= Form 3 .FindComponent(ListBox1.Items[ListBox1.ItemIndex]) as TDBGrid; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 17:20 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2019, 23:38 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
DimaBr, А можно показать весь код проекта. Ну не катит у меня На исполнении выскакивает ошибка при первом обращении к AGid ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2019, 00:27 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
DimaBr, Очень интересен код Form1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2019, 00:30 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
Это и есть весь текст проекта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2019, 22:02 |
|
||
|
Как Grid формы 2 назначить DataSet формы 1 в текущем его состоянии
|
|||
|---|---|---|---|
|
#18+
m830, У меня было if AGrid <> nil then Form3.DBGrid1.DataSource:=AGrid.DataSource; Причем лежит DBGrid1 на Form3 Убрал Form3 - заработало ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2019, 10:32 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39824045&tid=2039396]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
163ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 488ms |

| 0 / 0 |
