Порядок действий. 1. Расположите на форме семь меток, восемь текстовых полей и одну командную кнопку (рис

1. Расположите на форме семь меток, восемь текстовых полей и одну командную кнопку (рис. 3.1).

Рис. 3.1

2. Установите значения свойства Name:

ü формы — frmFirst,

ü кнопки — cmdCalc,

ü текстовых полей для ввода имен файлов — txtFl, txtF2,..., txtF4,

ü текстовых полей для ввода размеров файлов — txtSize1, txtSize2,..., t xtSize4.

3. Установите значения свойства Caption всех объектов в соответствии с рис. 3.1.

4. По собственному усмотрению установите значения свойств, определяющих внешний вид объектов.

5. Добавьте в проект вторую форму (воспользовавшись командами меню Project, Add Form или кнопкой на панели инструментов).

6. Расположите на форме восемь меток и одну командную кнопку (рис. 3.2).

Рис. 3.2

7.Установите значения свойства Name:

ü формы — f rmSecond;

ü кнопки — cmdExit;

ü метки для вывода имен файлов — LbLFile;

ü метки для вывода суммарного размера файлов в Кбайтах — LbLКЬ;

ü метки для вывода суммарного размера файлов в Мбайтах — LbLМЬ;

ü метки для вывода суммарного размера файлов в байтах – LbLВ.

8. Установите значения свойства Caption формы, кнопки и меток, в которых информация не изменяется, в соответствии с рис. 3.2.

9. Установите по собственному усмотрению значения свойств, определяющих внешний вид объектов.

10. Добавьте в проект отдельный модуль (команды меню Project, Add Module или кнопка в раскрывающемся окне кнопки Add Form на панели инструментов).

11. Измените имя модуля на ВМb. После того, как вы добавили в проект вторую форму и модуль, Окно проводника проекта будет иметь вид, представленный на рис. 3.3.

Рис. 3.3

12. Оставьте имя модуля, предложенное по умолчанию: BMb.bas.

13. Напишите программные коды Формы1 и Формы2, а также код модуля. Сначала сформулируйте, что должно происходить в файле Формы1:

ü пользователь вводит имена файлов и их размер в килобайтах, щелкает по командной кнопке < Вычисление суммарного размера файлов>, в результате чего происходит расчет суммарного размера файлов в килобайтах;

ü далее вызывается модуль, осуществляющий перевод суммарного размера файлов в байты и мегабайты;

ü затем с экрана первая форма удаляется, и появляется вторая форма, при этом имена файлов и значения суммарных размеров файлов в разных единицах измерения передаются во вторую форму.

Далее сформулируйте, что должно происходить в файле Формы2:

ü значения суммарного размера файлов в разных единицах измерения печатаются в соответствующих метках;

ü при щелчке мышью по кнопке < Выход> программа завершает работу.

Для выполнения этих процедур потребуются переменные, причем разной области видимости. Ниже приведены программные коды и пояснения к ним.

Программный код Пояснения
Форма1
Public SKb As Single SKb — суммарный объем файлов в килобайтах. Эта переменная будет использоваться в модуле для перевода в байты и мегабайты, а также в коде Формы2. Она объявлена как глобальная (видимая в обеих формах и модуле)
Public if1, if2, if3, if4 As String if1, if2, if3, if4 — имена файлов. Эти переменные будут использоваться в коде формы 2; они объявлены как глобальные.
Dim sf1, sf2, sf3, sf4 As Single sfl, sf2, sf3, sf4 — размеры файлов в килобайтах. Эти переменные будут использоваться только в процедуре Формы1. Они объявлены как локальные в разделе общих объявлений
Private Sub cmdCalc Click()  
sfl =...
sf2 =...
sf3 =...
sf4 =...
ifl =...
if2 =...
if3 =...
if4 =...
SKb =...
BMb Вызов модуля BMb
FrmFirst.Hide Форма1 удаляется с экрана
FrmSecond.Show Форма2 отображается на экране
End Sub  
Форма2
Private Sub Form_Load() Процедура выполняется при загрузке Формы 2
LbLFile.Caption = frmFirst.ifl + "," + frmFirst.if2 + "," + frmFirst. if3 + "," + frmFirst.if4 + " составляет: " В метку LbLFile помещаются имена файлов (свойство Caption), которые берутся из Формы1
LbLKb.Caption = frmFirst.SKb В метку LbLKb помещается суммарный размер файлов, который берется из Формы1
LbLMb.Caption = Str(SMb) В метку LbLMb помещаются суммарный размер файлов в мегабайтах, который был вычислен в модуле
LbLB.Caption = Str(Sb) В метку LbLB помещаются суммарный размер файлов в байтах, который был вычислен в модуле
 
End Sub  
Private Sub cmdExit_CIick() ... End Sub  
Модуль кода
Public SMb, Sb As Single Подумайте, почему переменные SMb и Sb объявлены как глобальные
Public Sub BMb()  
Const Conv As Integer = 1024 Подумайте, почему значение константы равно 1024. Значение переменной SKb для перевода берется из Формы1
SMb = frmFirst.SKb/ Conv  
Sb = frmFirst.SKb * Conv
End Sub
     

Пояснение. Метод Show используется для отображения формы на экране, Метод Hide — для удаления формы с экрана.

14. Наберите программный код. Самостоятельно заполните пропуски (...).

Первая строка процедуры Form_Load() достаточно длинная, поэтому она не уместится на экране, однако ее можно просмотреть в окне кода с помощью полосы прокрутки, но это не всегда удобно.

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

Строка

LbLFile.Caption = frmFirst.if1 + "," + frmFirst. if2 +"," + frmFirst. if3 + ", " + frmFirst.if4 + " составляет:"

может быть набрана следующим образом:

LbLFile.Caption = frmFirst.if1 + "," + frmFirst. if2 + _

"," + frmFirst. if3 + "," + frmFirst.if4 + " составляет:"

15. Замените в программном коде Формы 1 ключевое слово Dim на Private. Убедитесь, что программа по-прежнему будет работать правильно. Dim и Private в разделе глобальных объявлений равнозначны.

16. Попробуйте перенести строку


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: