Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Люди добрые, подскажите, пожалуйста, как в MDI-приложении передавать данные из одной формы в другую. Например: у главной формы есть две дочерние. При двойном щелчке на 1-ой дочерней форме открывается 2-ая дочерняя. Как сделать так, чтобы при нажатии на кнопку во второй форме, в первой форме что-то изменилось (например изменился текст в строке ввода)? Заранее благодарен за полезную информацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2004, 10:01 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Как вариант, Через owner формы можно добраться до любого родителя Dim myOwner as MainForm = Ctype(Me.owner, MainForm) где MainForm - это родитель формы. Тоесть ты можешь создать ссылку на своего родителя а дальше менять его свойства, переменные, и т.д все то что открыто. Помимо этого есть еще несколько вариантов, если этот не подходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2004, 15:09 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
А можно немножко поподробнее? Допустим, я создал ссылку на форму Form1. Как мне теперь поменять свойство кнопки button1.enabled формы Form1 с true на false? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2004, 18:04 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
>Допустим, я создал ссылку на форму Form1. Как мне теперь поменять свойство кнопки button1.enabled формы Form1 с true на false? А почему допустим. А вы ее создали? Пробуйте сразу же и пишите что не получилось, тогда бы может быть вместо этого вопроса появился другой. Точно проверьте что ссылка на экземпляр класса MainForm создалась. А дальше как обычно myOwner.button1.enabled = True Главная идея подобраться к УЖЕ СОЗДАННОМУ экземпляру класса MainForm (а не создавать новый), а как вы подберетесь уже другой вопрос. Если кнопки не видно то можно сделать public процедуру в MainForm которая будет устанавливать значение enable кнопки button1. Вообще в этом и подобных случаех (если лень читать документации) можно просто взять debug остановить выполнение программы на второй форме. Октрыть watch и прошерсить все свойства там и посмотрите что лежит в owner, mdiparent. Но повторюсь вариантов решения много, все зависит от вашей задачи, может быть вам лучше использовать ShowDialog(Me) тогда точно вы подберетесь к главной форме через owner, и в этом случае вообще лучше работать исключительно из MainForm. В случае MDI если все правильно то через MdiParent. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 07:43 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Пишу: Dim myOwner As Form1 = CType(Me.Owner, Form1) myOwner.btnImport.Enabled = True Выдаёт ошибку: Object reference not set to an instance of an object. (Мне нужно передать данные не из дочерней формы в главную, а из одной дочерней формы в другую.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 09:16 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Уточню: не из MdiParent в MDIchild, а из MDIChild в MDIChild ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 09:45 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Извиняюсь, не из MDIchild в MdiParent, а из MDIChild в MDIChild ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 09:46 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Ну owner не катит так как MDI. Добраться до main тогда можно через MdiParent Попробуй так: Код: plaintext 1. 2. А к любому Child подобраться можно через массив форм MDIChildren блин подрукой basicа нет попробуй например так: myParent.MdiChildren(0) ' вернет первую форму myParent.MdiChildren(1) ' вторую и т.д myParent.MdiChildren(2) и т.д все формы MDIChild. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 11:33 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Из MDIchild в MDIparent данные удалось передать. А с передачей из MDIchild в MDIchild проблемы. Если написать myParent.MdiChildren(0), то я добераюсь до первой отрытой MDIparent-формы, но первой открытой MDIparent-формой может в процессе работы являться любая MDIparent-форма. Возможно как-нибудь добраться до конкретной (по названию) MDIparent-формы ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 13:04 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Следовательно и ищи среди открытых свою по названию формы например. Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 13:14 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Прощу прощения за очепятки негде проверить но идея думаю понятна ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 13:16 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Ура!!! Всё работает! Большое спасибо за информацию! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2004, 14:15 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Возник ещё один вопросик по этой теме. Как менять свойства элементов одной MdiChild-формы из другой MdiChild-формы понятно. А как из одной MdiChild-формы, к примеру, запустить нажатие кнопки другой MdiChild-формы? Заранее благодарен за полезную информацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2004, 13:51 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
>А как из одной MdiChild-формы, к примеру, запустить нажатие кнопки другой MdiChild-формы? Хммм А что вы понимаете запустить нажатие кнопки другой формы, Если запустить тот код который бы произошел если бы пользователь нажал на эту кнопку? Ну можно запустить таким способом: Код: plaintext 1. Но лучше сделать процедуру которая вызывается как нажатием кнопки так и другими способами. Хороший пример с удалением записи: можно удалить запись как нажатием кнопки btnDelete, так и нажатием например клавиши Delete в TreeView. Тогда проще создать процедуру: Код: plaintext 1. 2. 3. Которую вызывать как из события btnDelete.Click так и из (например) treeView1.KeyDown, а также например из другой формы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2004, 14:14 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
В form1(MDIchild) содержится textbox1. В form1 создал процедуру: Sub test() MsgBox(Me.TextBox1.Text) End Sub form2(MDIchild) содержит кнопку. В процедуру нажатия кнопки пишу: Dim myParent As mainForm = CType(Me.MdiParent, mainForm) Dim myForm As Form For Each myForm In myParent.MdiChildren() If myForm.Name = "form1" Then myForm... ' возможен ли здесь вызов процедуры test? End If Next Подскажите, пожалуйста, как вызвать процедуру тест? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2004, 17:47 |
|
||
|
Передача данных из одной формы в другую
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.04.2004, 07:19 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=32444706&tid=1439237]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
74ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 411ms |

| 0 / 0 |
