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

Что такое "Модуль" и "Форма" и чем они отличаются

06.08.2012, 19:55. Показов 3158. Ответов 7
Метки нет (Все метки)

Вот в этой теме: Создание Крестика в центре экрана
в самом низу раптор дал два кода, они нужно запихнуть в модуль а другой на форму.

Мне вот интересно что такое модуль? Форма, я знаю что это... но вот что такое модуль?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.08.2012, 19:55
Ответы с готовыми решениями:

Как зделать так ,что бы в "менюстрип" при нажатии на вклаку появлялась другая "форма"
Как зделать так ,что бы в "менюстрип" при нажатии на вклаку появлялась другая "форма"

Что такое компонент "Data" и чем он полезен
Встретил такую штучку, "Data" называется.... Вопрос что это такое и с чем его едят???

Замена символа на его двухзначный порядковый номер в алфавите (например "а" меняется на "01", "к" на "12")
Нужна помощь

Что такое "subj" ("сабж") ?
Ребята, прошу прощения за этот вопрос, но я действительно не знаю на него ответ.

7
Модератор
Эксперт функциональных языков программированияЭксперт Python
34332 / 19121 / 4020
Регистрация: 12.02.2012
Сообщений: 32,030
Записей в блоге: 13
06.08.2012, 20:45 2
Модуль - это хранилище процедур. Форма - хранилище контролов. Это если грубо. Модули бывают двух видов: просто модули и модули классов (они содержат определение классов). Форма достаточно близка именно к модулю класса. Не все знают, что, если в проекте есть форма Form1, содержащая кучу контролов, то очень легко создать сколько угодно экземпляров этой формы:

Visual Basic
1
2
3
4
5
6
7
8
9
...
 
Dim Frm as Form1
 
     Set Frm = new Form1
 
     Frm.Show     
 
...
Вот пример занятного проекта:
Вложения
Тип файла: zip t013.zip (3.7 Кб, 38 просмотров)
1
2 / 2 / 0
Регистрация: 11.10.2012
Сообщений: 34
12.10.2012, 17:16 3
К сжалению, применимость вновь созданных форм Form1 очень ограничена поскольку readonly имена таких форм все одинаковые. Мне, помнится, не удалось привязать два слегка модифицированных экземпляра формы к подформ-контролам двух похожих форм. VB требует имена, а не объекты в качестве параметров в большинстве интересных контекстов (SourceObject в моём случае).
Я ничего не путаю?
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
34332 / 19121 / 4020
Регистрация: 12.02.2012
Сообщений: 32,030
Записей в блоге: 13
13.10.2012, 08:51 4
Цитата Сообщение от midc Посмотреть сообщение
VB требует имена, а не объекты
- странно. Покажи пример.
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
34332 / 19121 / 4020
Регистрация: 12.02.2012
Сообщений: 32,030
Записей в блоге: 13
13.10.2012, 09:02 5
Имя формы действительно менять нельзя. Но не только у динамически создаваемой, но и у обычной (см. забитую строку в прилагаемом примере). Свойство name доступно для модификации только в IDE.
А прочие свойства нормально модифицируются (в примере - Caption и BackColor):
Вложения
Тип файла: zip t013a.zip (4.3 Кб, 9 просмотров)
0
2 / 2 / 0
Регистрация: 11.10.2012
Сообщений: 34
13.10.2012, 16:22 6
Цитата Сообщение от Catstail Посмотреть сообщение
- странно. Покажи пример.
Я уже привёл пример из MS Access VBA, где SourceObject свойство типа String «требует» текстовое имя присоединяемой формы.
Впрочем если с ходу не очень понятно о чём это я, то, как говорят в нашей глубинке, "Хорошего Вам дня."
 Комментарий модератора 
Примером обычно подразумевается проект с исходным кодом.
Участники не обязаны понимать сходу задавшего вопрос. Растолковать его - задача человека, который его задает.
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
34332 / 19121 / 4020
Регистрация: 12.02.2012
Сообщений: 32,030
Записей в блоге: 13
13.10.2012, 22:33 7
Спасибо за пожелание... А про VBA в Access-е - да этот VBA отличается от VBA в Excel или Word. Но все равно объект в VBA идентифицируется объектной ссылкой.
0
2 / 2 / 0
Регистрация: 11.10.2012
Сообщений: 34
14.10.2012, 03:00 8
Упомянутый пример иллюстрирует необходимость использования именно текстового значения -- имени формы.
Целью моего вмешательства в разговор — прошу прощения — было получение ещё одного мнения по поводу следующей немудрёной задачки: создать два экземпляра формы и после минимальной модификации присоединить их к двум одновременно доступным пользователю формам в качестве SourceObject их соответствующих подформ контролов. У меня не получилось именно из-за того, что в отличие от, скажем, DataSource свойства имяизменить невозможно (ох, не случайно, а в данном случае надо бы, см. также мою заметку от 08:22).
Прошу прокомментировать, если есть интерес.

Добавлено через 1 час 38 минут
Подзапамятовал, что именно в затронутых мной темах Access VBA особенно заметно отличается от VB6. Вопросы снимаю как неуместные отклонения от темы. Прошу снисхождения: давно дело было. :-(
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.10.2012, 03:00
Помогаю со студенческими работами здесь

Создать раздел меню "Правка" и продумать логику команд "копировать", "вставить"
Здравствуйте! Все никак не могу написать код для раздела меню Правка! Есть главная форма! На этой...

Создать тип "Book" и в нём сделать пункты "автор" и "количество страниц"
нужна задача на наследование, т. е. создать родителя и наследника. создать тип Book (родитель) и в...

Указать для каждого вопроса проценты ответов "да", "нет", "не знаю"
В двухмерном массиве размером nхm хранятся результаты опроса n человек на m вопросов.Ответами на...

Указать для каждого вопроса проценты ответов "да", "нет", "не знаю"
Здравствуйте господа программисты и сисадмины.Помогите пожалуйста начинающему с решением следующей...


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

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

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