Слайд 1Добавление в программу новых форм
Лекция 5
Слайд 2Способы создания новых форм
Добавление формы как диалогового окна метод ShowDialog
и свойство DialogResult
Программное создание формы и ее элементов
Наследование форм (инструмент
выбор наследования)
Создание классов
Слайд 3Программное создание формы и ее элементов
Объекты объявляются и их экземпляры
создаются с помощью ключевых слов Dim и New
'Создаем вторую форму с именем
form2
Dim form2 As New Form
form2.Text = «Моя новая форма» form2.FormBorderStyle = FormBorderStyle. FixedDialog
Слайд 4Программное создание формы и ее элементов
'положение формы устанавливается вручную
form2.StartPosition =
FormStartPosition.Manual
'Объявляем структуру Rectangle, хранящую размеры формы
Dim Form2Rect As New Rectangle(200,
100, 300,250)
form2.DesktopBounds = Form2Rect
form2.ShowDialog()
Слайд 5Добавление элементов управления в форму во время выполнения
Dim button1 as
New Button
button1.Text = "Нажми меня“ button1.Location = New Point(20, 25)
form2.Controls.Add(button1)
Слайд 6Пример: Создание новых элементов управления Label и Button
'Объявляем новую
форму и объекты элементов управления
Dim form2 As New Form
Dim lblDate
As New Label
Dim btnCancel As New Button
' Устанавливаем свойства метки
lblDate.Text = "Текущая дата: " & DateString lblDate.Size = New Size(150, 50)
lblDate.Location = New Point(80, 50)
Слайд 7Пример
' Устанавливаем свойства кнопки btnCancel.Text = «Отмена»
btnCancel. Location
= New Point(110, 100)
' Устанавливаем свойства формы
form2.Text = "Текущая
дата« form2.CancelButton = btnCancel form2.StartPosition = FormStartPosition. CenterScreen
Слайд 8Пример
'Добавляем новые объекты в коллекцию Controls
form2.Controls.Add(lblDate)
form2.Controls.Add(btnCancel)
'Отображаем форму как диалоговое
окно form2.ShowDialog()
Слайд 9Наследование форм
Inherits
System.Windows.Forms.Form
Слайд 10Наследование форм
1. компиляция - проекта, так как наследовать можно только
от тех форм, которые скомпилированы в виде файлов .exe или
.dll
2. Project/ Add NEW ITEM/WINDOW FORM/ Inherited Form
3. выбрать шаблон Inherited Form (Производная форма)
Слайд 12Создание класса
объект состоит из данных и методов, которые он использует
для работы с ними
Внедрение (инкапсуляция) представляет собой процесс интеграции программной
оболочки и данных в единое целое — объект.
Для создания объекта из класса, класс должен иметь интерфейс (свойства, методы, события)
Слайд 13Объявление переменных класса
Private Name1 As String
Private Name2 As String
Для создания
свойств класса:
Public Property FirstName() As String
пример:
Слайд 14Создание свойств
Public Property FirstName() As String
Get
Return Name1
End Get
Set(ByVal Value As
String)
Name1 = Value
End Set
End Property
Слайд 15Создание свойств
Блок Get описывает свойства переменной
Блок Set определяет ее значение
Для
запуска программы используется функция Age()
Public Function Age(ByVal Birthday As Date)
As Int
Return Int(Now.Subtract(Birthday).Days / 365.25)
End Function
Слайд 17Пример
Pablic Class Person
Private Name1 As String
Private Name2 As String
Public
Property FirstName() As String
Get
Return Name1
End Get
Set(ByVal
Value As String)
Name1 = Value
End Set
End Property
Слайд 18Пример
Public Property LastName() As String
Get
Return Name2
End
Get
Set(ByVal Value As String)
Name2 = Value
End Set
End Property
Public Function Age(ByVal Birthday As Date) As Integer Return Int(Now.Subtract(Birthday).Days / 365.25)
End Function
Слайд 19Пример
Dim Employee As New Person
Dim DOB As Date
Employee.FirstName = TextBox1.Text Employee.LastName = TextBox2.Text
DOB = DateTimePicker1.Value.Date MsgBox(Employee.FirstName
& "" &_ Employee.LastName & "в возрасте " & _Employee.Age(DOB) & "лет.")
Слайд 21Использование ключевого слова Inherits
Public Class Teacher
Inherits
Person
Private Level As Short
Public Property Grade() As Short
Get
Return Level
End Get
Set(ByVal Value As Short)
Level = Value
End Set
End Property
End Class
Слайд 22Результат
Dim Employee As New Teacher
Dim DOB As Date
Employee.FirstName = TextBox1.Text Employee.LastName = TextBox2.Text
DOB = DateTimePicker1.Value.Date Employee.Grade
= InputBox("На каком уровне вы обучаете?")
MsgBox(Employee.FirstName & ""& Employee.LastName & "обучает на уровне "& Employee.Grade)