Формы Windows, графический вывод и печать

Среда программирования Visual Basic

Наследование и интерфейсы VB .NET

  • Основы наследования VB .NET
  • Знакомство с наследованием VB .NET
  • Обращение к функциональности базового класса
  • Переопределение свойств и методов
  • Просмотр иерархии наследования
  • Правила преобразования и обращения к членам классов в иерархии наследования
  • Полиморфизм на практике
  • Замещение
  • Абстрактные базовые классы

 

Создание диалоговых окон

Чтобы вывести собственное диалоговое окно, создайте форму, задайте ее свойствам ControlBox, MinimizeBox и MaximizeBox значение False, а свойству Modal — значение True. Форму следует выводить методом ShowDialog в режиме модального диалогового окна. Если при этом задать свойство TopMost равным True, диалоговое окно будет располагаться поверх всех окон на экране (и вам уже не придется использовать функцию API SetWindowPos).

Однако поведение стандартных кнопок несколько изменилось по сравнению с VB6. Свойства Default и Cancel не поддерживаются, поэтому соответствующие элементы-кнопки назначаются свойствам AcceptButton и Cancel Button:

Me.AcceptButton = btnOK Me.Cancel Button = btnCancel

После вызова ShowDialog программа может узнать, какая кнопка была нажата на форме, при помощи свойства Dial ogResult кнопки или самой формы (нажатие кнопки с заданным свойством DialogResul t приводит к автоматическому закрытию формы, на которой эта кнопка находится).

 

Размещение элементов на форме во время выполнения

До выхода VB6 существовал лишь один способ размещения элементов на форме во время выполнения программы — массивы элементов. В VB6 появился более удобный режим динамического добавления элементов, но и в этом случае не обходилось без проблем с обработкой событий для добавленных элементов. В VB .NET этот процесс подвергся существенным изменениям. Например, создайте новое приложение Windows и включите в него следующий фрагмент:

1 Private Sub Forml_Load(ByVal sender As System.Object,ByVal e As _

2 System.EventArgs) Handles MyBase.Load

3 Dim newButton As New System.Windows.Forms.Button()

4 ' Задать свойства newButton

5 With newButton

6 .Visible =True

7 .Size =New Size(l00.l00)

8 ' .Text ="I'm a new button"

9 ' Обычно здесь задаются и другие свойства

10 End With

11 Me.Controls.Add(newButton)

12 AddHandler newButton.Click.AddressOf Me.newButton_Click

13 End Sub

14 Public Sub newButton_Click(ByVal sender As _

15 System.Object.ByVal e As System.EventArgs)

16 MsgBox("You clicked on my new button")

17 End Sub

В строке З создается новая кнопка, а в строках 5-10 удобная сокращенная запись With используется для задания ряда свойств объекта newButton. Только в строке 11 новая кнопка размещается на форме. Строка 12 снова демонстрирует замечательную гибкость механизма обработки событий .NET: код, содержащийся в строках 14-17, назначается обработчиком события для кнопки. Возможный результат выполнения программы показан на рис. 8.15.

Рис. 8.15. Создание кнопки во время выполнения программы

;
Атомные станции с реакторами РБМК 1000 Преобразование энергии на АЭС Конструкция реактора РБМК-1000 Турбина реакторной установки Сепаратор-пароперегреватель Насосы атомной станции с реактором РБМК Система радиационного контроля Атомные станции с реакторами ВВЭР Система управления и контроля Атомные станции с реакторами БН-600 Высшая Математика Курс лекций - 1 семестр Интегралы - второй семестр примеры решения задач Конспекты - третий семестр Производная - 4 семестр ТФКП теория функции Дифференциалы задачи Mathematica учебник Ядерное разоружение Ядерные испытания Ядерная физика MATLAB электронный учебник Maple 7 математический анализ Первообразная курсовые задания Типовой по Кузнецову Смоленская АЭС Чернобыльская катастрофа