|
|
|
Supreme Being
      
участник
Last Login: 05.02.2007 6:22
Сообщ.: 329,
Visits: 3 602
|
|
Есть главная MDI форма. На ней помещен объект. Запускаем подчиненную форму. Теперь из кода в подчиненной форме надо обратиться к объекту в главной форме. В VB6 это делалось просто ИмяФормы.ИмяОбъекта А тут это не проходит...
|
|
|
|
|
Forum Guru
      
участник
Last Login: 15.04.2004 10:05
Сообщ.: 53,
Visits: 584
|
|
в дочерней форме в заголовке (вверху класса формы) элемент должен быть описан как Public Shared. Например: Public Shared bttnOpen as Button а в событии Form_Load присвой ссылку: bttnOpen = Button1
|
|
|
|
|
Supreme Being
      
участник
Last Login: 05.02.2007 6:22
Сообщ.: 329,
Visits: 3 602
|
|
Да я примерно так и поступил. Создал переменную public типа object В событии load присваиваю этой переменной то что мне надо, а потом из других модулей обращаюсь к ней. Просто я думал, что можно ссылаться как-то по-старинке. Ведь это удобнее. Не надо ничего описывать. Неужели нет такой возможности?
|
|
|
|
|
новичок
      
участник
Last Login: 04.12.2003 7:32
Сообщ.: 2,
Visits: 23
|
|
Привет всем. Задача: нажать кнопку на дочерней форме. Получить: на кнопке родительской формы отобразить текущее время.
Имя формы-контейнера - "Form1". Имя формы-дочери - "Form2".
Вызываем дочернюю форму из Form1 (на Form1 содержится кнопка "Button1") (на Form2 содержится кнопка "Button2")
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click ' запуск дочерней формы Dim frm as Form2 frm.MdiParent = Me frm.Show() end sub
На дочерней форме кликаем кнопку "Button2" для получения результата:
Private Sub Button2_Click(ByVal sender As System.Object, _ByVal e As System.EventArgs) Handles Button2.Click ' отобразить на кнопке родительской формы текущее время CType(Me.ParentForm, Form2).Button1.Text = Now.ToShortTimeString End Sub
Удачи!
|
|
|
|
|
новичок
      
участник
Last Login: 04.12.2003 7:32
Сообщ.: 2,
Visits: 23
|
|
Немного я просмотрел... Sorry!
Private Sub Button2_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button2.Click ' отобразить на кнопке родительской формы текущее время CType(Me.ParentForm, Form1).Button1.Text = Now.ToShortTimeString End Sub
|
|
|
|
|
Supreme Being
      
участник
Last Login: 05.02.2007 6:22
Сообщ.: 329,
Visits: 3 602
|
|
Не прозрачно это все. Но в принципе это таже выход. Хотя оба метода это все равно, что чесать правой рукой левое ухо. Почему убрали такую возможность которая была в VB6? (вопрос чисто реторический)
|
|
|
|