Экземпляры формы

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
pstrkim
Новичок
Новичок
 
Сообщения: 30
Зарегистрирован: 03.01.2007 (Ср) 23:53

Экземпляры формы

Сообщение pstrkim » 26.01.2007 (Пт) 23:34

Имеется 3 формы:
fOrders (Заказы)
fOrder (Заказ)
fProducts (Товары)

Из fOrders открывается экземпляр (New) fOrder для редактирования Заказа
Из fOrder открывается fProducts для выбора и вставки Товара в Заказ

Проблема в том что когда открыто несколько экземпляров fOrder
Товар вставляется не в текущий экземпляр а в тот который был открыт первым
Как правильно сослаться на нужный экземпляр формы?

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 26.01.2007 (Пт) 23:55

Screen.ActiveForm?
Изображение

pstrkim
Новичок
Новичок
 
Сообщения: 30
Зарегистрирован: 03.01.2007 (Ср) 23:53

Сообщение pstrkim » 28.01.2007 (Вс) 20:47

Все оказалось несколько сложнее
надо вставить позицию из текущей формы fProducts в уже открытый но неактивный экземпляр fOrder
Вот как были открыты экземпляры fOrder из формы fOrders
Код: Выделить всё

Private Sub lvMain_ItemClick(ByVal Item As MSComctlLib.ListItem)
Dim frmO As New fOrder
    frmO.Show
End Sub

Вот этим кодом вставляются значения в fOrder из формы fProducts
Код: Выделить всё

Private Sub lv_DblClick()
    fOrder.grdStructInp.Columns(1) = fProducts.lv.SelectedItem
    Me.Hide
End Sub


Экземпляры не различаются между собой и позиция вставляется произвольно обычно в первую открытую форму. Как различить их? Запоминать каждую форму в стататической переменной при загрузке не получается

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 29.01.2007 (Пн) 8:18

Стоит понять различие между именем класса и именем экземпляра. И как только это будет сделано, решение появиться само.
Весь мир матрица, а мы в нем потоки байтов!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 1

    TopList  
cron