Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия | |||
zn:window [2017/12/27 08:26] иван_денисов удалено |
— (текущий) | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | =====Простое окно (.Net)===== | ||
- | Пример несколько изменён, | ||
- | <code oberon2> | ||
- | module Main; | ||
- | import System, | ||
- | System.Windows.Forms as Формы; | ||
- | |||
- | type {public, ref} | ||
- | тФормаГлав = object implements Формы.Form | ||
- | var {public} | ||
- | кнпВыход : Формы.Button; | ||
- | |||
- | procedure {public} актВыход ( отправ_: | ||
- | begin | ||
- | Формы.Application.Exit; | ||
- | end актВыход ; | ||
- | |||
- | procedure Добавить_кнпВыход; | ||
- | begin | ||
- | кнпВыход := new Формы.Button; | ||
- | кнпВыход .Text := " | ||
- | кнпВыход .Left := Width - кнпВыход .Width - 50; | ||
- | кнпВыход .Top := Height - кнпВыход .Height - 50; | ||
- | кнпВыход .add_Click(актВыход); | ||
- | end Добавить_кнпВыход; | ||
- | |||
- | begin | ||
- | Text := " | ||
- | Width := 420; | ||
- | Height := 240; | ||
- | Добавить_кнпВыход; | ||
- | Controls.Add(кнпВыход ); | ||
- | Update; | ||
- | CenterToScreen; | ||
- | end тФормаГлав; | ||
- | |||
- | |||
- | var | ||
- | фрмГлавная: | ||
- | begin | ||
- | фрмГлавная := new тФормаГлав; | ||
- | Формы.Application.Run(фрмГлавная); | ||
- | end Main. | ||
- | </ | ||
- | Пример достаточно хорошо демонстрирует объектную окраску от C#, при этом Зоннон встроенными средствами обеспечивает асинхронность и многопоточность с лёгкой возможностью создания критических монопольных секций. | ||
- | |||
- | ====Компиляция и запуск==== | ||
- | Прямая компиляция завершится с ошибкой. Компилятор укажет на то, что невозможно выполнить IMPORT System.Windows.Forms (и куча наследственных ошибок из-за этого). | ||
- | В этой ситуации в папке References надо добавить ссылку на этот компонент. Физически, | ||
- | После этого компиляция проходит успешно, |