ОСНОВЫ ПРОГРАММИРОВАНИЯ

  • pdf
  • 10.05.2020
Публикация в СМИ для учителей

Публикация в СМИ для учителей

Бесплатное участие. Свидетельство СМИ сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 32. ОСНОВЫ ПРОГРАММИРОВАНИЯ.pdf

4.  Программа «Времена года»

Задание 1. Создать программу «Времена года», по которой в зависимости       от      выбранного положения переключателя (зима, весна, лето, осень) выдается изображение       соответствующего времени года.

 

1.     Запустить VBA и создать новый проект.

2.     Переименовать форму - «Времена года».

3.     Добавить на форму объекты:      

Объект

Свойство

Значение

Label

(надпись)

Name

LabelSeason

Caption

Времена года

Font

Tahoma, 22

Image

(рисунок)

Name

Image1

Visible

False (вначале рисунок невидим)

PictureSizeMode

1

Picture

(вставить рисунок зимы)

Height

180

Width

180

Command Button

(кнопка)

Name

CmdExit

Caption

Выход

Frame

(рамка)

Name

Frame1

Caption

Выберите время года

Font

Tahoma, 12

1

Объект

Свойство

Значение

Все переключатели располагаются на рамке Frame1  (перед вставкой на поле, выделить рамку).  

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

OptionButton

(переключатель)

Name

OptWinter 

Caption

Зима

ForeColor

(синий – выбирается в палитре Pelette)

Font

Tahoma, 14, полужирный

OptionButton

(переключатель)

Name

OptSpring 

Caption

Весна

ForeColor

(светло-зеленый)

Font

Tahoma, 14, полужирный

OptionButton

(переключатель)

Name

OptSummer

Caption

Лето

ForeColor

(темно-зеленый)

Font

Tahoma, 14, полужирный

OptionButton

(переключатель)

Name

OptAutumn 

Caption

Осень

ForeColor

(оранжевый)

Font

Tahoma, 14, полужирный

4.     Включить проверку переменных (Option Explicit).

5.     Запрограммировать щелчок на кнопке Выход на завершение программы.

6.     Запрограммировать щелчок на переключателях: 

a)       Запрограммировать переключатель Зима (OptWinter), чтобы в поле рисунка загружался файл, например, winter.jpg (свойство Picture и функция LoadPicture). Поскольку каталог с приложением может находиться в разных папках, то к имени файла надо добавить путь к файлу с приложением (ActiveWorkbook.Path). После этого надо поле с рисунком сделать видимым (свойство Visible).:  Private Sub OptWinter_Click() 

                Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\winter.jpg")         

                Image1.Visible = True     

End Sub

b)      Аналогично запрограммировать остальные переключатели.

Задание 2. Добавить флажок, при включении которого в дополнительной рамке появляются названия месяцев, относящиеся к выбранному сезону.

 

1.     Добавить на форму объекты:      

Объект

Свойство

Значение

Frame

(рамка)

Name

Frame2

Caption

Месяцы

Font

Tahoma, 12

Следующие объекты располагаются на рамке Frame2  (перед вставкой на поле, выделить рамку):

Label

(3 надписи)

Name

Label1, Label2, Label3

Caption

 

Font

Tahoma, 14

TextAlign

2

CheckBox

(флажок)

Name

CheckBox1

Font

Tahoma, 12

2.     Создать процедуру пользователя Month, по которой проверяется, включен ли флажок; если да (значение True), то в зависимости от того, где стоит переключатель вывести названия месяцев; если флажок не выбран (значение

        False), то все значения надписей очищаются:         

Private Sub Month() 

If CheckBox1 Then 

  If OptWinter Then Label1="Декабрь" : Label2="Январь" : Label3="Февраль"

          If OptSpring Then Label1="Март" : Label2="Апрель" : Label3="Май"         

  If OptSummer Then Label1="Июнь": Label2="Июль" : Label3="Август"    If OptAutumn Then Label1="Сентябрь": Label2="Октябрь": Label3="Ноябрь"

        Else         

        Label1 = "": Label2 = "": Label3 = ""      

        End If      

End Sub


3.     Запрограммировать щелчок на флажке, который позволял бы для выбранного переключателя выводить названия месяцев. Для этого достаточно вызвать процедуру Month

Private Sub CheckBox1_Click() 

        Call Month        

End Sub

4.     Отредактировать процедуры щелчка мышью по переключателям таким образом, чтобы при выборе времени года на надписях Label1, Label2, Label3 появлялись соответствующие названия месяцев. 

        Например, для зимы:          

        Private Sub OptWinter_Click()      

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\winter.jpg") 

        Image1.Visible = True          

        Call Month      

End Sub

5.     Программа «Каталог» Самостоятельная работа.

Задание. Создать программу «Каталог». Комментарии.

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

Также на форме имеется флажок Цена, при выборе которого в специально отведенном поле выдается цена товара (например, 32000 для компьютера), если флажок отключают, то надпись очищается.

 

 

Приложение в режиме конструктора

(по умолчанию все переключатели и флажок выключены,  рисунок – произвольный)

 

 

Работа приложения 

(переключатель в положении Компьютер,  флажок Цена включен)

ОБРАЗЦЫ

4. «Времена года» (задание 1).

Option Explicit

Private Sub CmdExit_Click()

End

End Sub

Private Sub OptAutumn_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\Autumn.jpg")

Image1.Visible = True

End Sub

Private Sub OptSpring_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\spring.jpg")

Image1.Visible = True

End Sub

Private Sub OptSummer_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\summer.jpg")

Image1.Visible = True

End Sub

Private Sub OptWinter_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\winter.jpg")

Image1.Visible = True

End Sub

Private Sub CheckBox1_Click()

Call Month End Sub

4. «Времена года» (задание 2).

Private Sub CmdExit_Click()

End

End Sub

Private Sub OptAutumn_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\Autumn.jpg")

Image1.Visible = True

Call Month

End Sub

Private Sub OptSpring_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\spring.jpg")

Image1.Visible = True

Call Month

End Sub

Private Sub OptSummer_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\summer.jpg")

Image1.Visible = True

Call Month

End Sub

Private Sub OptWinter_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\winter.jpg")

Image1.Visible = True

Call Month

End Sub

Private Sub Month()

If CheckBox1 Then

  If OptWinter Then Label1 = "Декабрь": Label2 = "Январь": Label3 = "Февраль"

  If OptSpring Then Label1 = "Март": Label2 = "Апрель": Label3 = "Май"

  If OptSummer Then Label1 = "Июнь": Label2 = "Июль": Label3 = "Август"   If OptAutumn Then Label1 = "Сентябрь": Label2 = "Октябрь": Label3 = "Ноябрь"

Else

Label1 = "": Label2 = "": Label3 = ""

End If

End Sub

5. «Каталог».

Option Explicit

Private Sub CheckBox_Click()

Call Price

End Sub

Private Sub CmdExit_Click()

End

End Sub

Private Sub OptComputer_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\computer.jpg") Call Price

End Sub

Private Sub OptMonitor_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\monitor.jpg") Call Price

End Sub

Private Sub OptPrinter_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\printer.jpg") Call Price

End Sub

Private Sub OptScaner_Click()

Image1.Picture = LoadPicture(ActiveWorkbook.Path & "\scaner.jpg") Call Price

End Sub

Private Sub Price()

'Моя процедура

If CheckBox Then

  If OptComputer Then LabelPrice = 32000

  If OptMonitor Then LabelPrice = 8700

  If OptPrinter Then LabelPrice = 10500

  If OptScaner Then LabelPrice = 2200

Else

LabelPrice = ""

End If

End Sub

Примечание. 

Казалось бы можно было сделать процедуру с параметром Private Sub Price(x as Currency), где х – цена товара. Но поскольку данная процедура вызывается еще из процедуры  CheckBox_Click(), где значение х неопределенно, то это не рационально.