1 / 1 / 0
Регистрация: 25.05.2008
Сообщений: 232
1

Работа с формами в VB

29.03.2011, 11:32. Показов 1706. Ответов 6
Метки нет (Все метки)

Кто может прояснить следующую ситуацию?
Допустим есть форма Form1.
Все мы знаем, что басик создает неявно глобальную переменную с точно таким же именем, чтобы можно было сразу обращаться к Form1.
(бэйсик пишет где то сам себе: Public Form1 as New Form1)
Но обычно используется явное определнеие переменной формы, ну чтобы можно было бы породить несколько экземпляров одной и той же формы.
Ну например Dim frmMyForm as New Form1
Так вот не понятно поведение переменной формы frmMyForm если например ее
определить в процедуре, а не на уровне модуля.
При выходе из процедуры переменная формы продолжает жить, хотя по идее должна была умереть при выходе их процедуры.
И вообще как народ использует и определяет формы?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.03.2011, 11:32
Ответы с готовыми решениями:

работа с формами
Здравствуйте, подскажите, пожалуйста, как проще всего работать с формами, например есть <form...

работа с формами
Добрвй день! Имеются две формы, необходимо, чтобы form1 открывалась после того, как form будет...

Работа с формами
У меня есть таблица, в которой передаются данные с двух кнопок. Тело таблицы заключено в тело...

работа с формами C++
здравствуйте форумчане) нужна ваша помощь, у меня есть готовая форма в C++ я разместил все что мне...

6
1 / 1 / 0
Регистрация: 25.05.2008
Сообщений: 232
31.03.2011, 15:00  [ТС] 2
Никто не задавося этим вопросом или он тривиальный?
0
Сумрак
31.03.2011, 17:54 3
хех.. грубо говоря это уже обьект(созданный), а обьект и переменная это несколько разные вещи. Созданный обьект нужно убить. Создав форму и об'ект, ваша переменная уже является обьектом.
Сумрак
31.03.2011, 17:56 4
Наверное так.... переменная резервирует память, а обьект занимает эти места.
Сумрак
31.03.2011, 18:08 5
>>Dim frmMyForm as New Form1
этой стройчкой вы не обявляете переменую. а создаете экземпляр обьекта на базе Form1, c именем frmMyForm. Все дело в NEW
Если так..
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
sub ZZZ()
Dim myFRM as objectz  '(Variant)
   d=1
   if d=1 then
   set  myFRM=new Form1
   myFRM.show
end if
 
' если d <> 1 то переменная просто умрет, а если =1 то не забудте выгрузить форму :-)
 
end sub
Messir
31.03.2011, 19:41 6
2 автор:
наверное, все-таки тривиальный...

2 Сумрак:
>> Наверное так.... переменная резервирует память, а обьект занимает эти места.
Переменная ничего не резервирует. Переменная - это, фактически, просто адрес в памяти, а ее тип - указание компилятору, как именно трактовать содержимое по этому адресу в памяти. Пока переменная не инициализирована - она ни на что не указывает.
Сумрак
01.04.2011, 03:51 7
to messir
Согласен, у Вас понятнее получилось обьяснение :-)
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.04.2011, 03:51
Помогаю со студенческими работами здесь

Работа с формами
Делаю форму с вкладками, на вкладках списки и кнопки. Привязываю для кнопок Открытие форм по...

Работа с формами
Здравствуйте! У меня есть две формы. На первой в менюшке поставил переключатель на вторую форму. ...

Работа с формами
При щелчке по кнопке ОК формы «Меню» вывести в области «Счет» суммарную стоимость выбранных блюд. ...

Работа с формами
Добрый вечер. У меня вопрос.Возможно ли отображение форм в виде каскада. Я делала используя...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru