Введение в FormsABC: различия между версиями

228 байт добавлено ,  1 год назад
м
style editing
Метка: редактор вики-текста 2017
м (style editing)
'''FormsABC''' - учебный модуль '''PascalABC.NET''' для работы простейшим оконными приложениями без дизайнера форм. Основан на устаревшей технологии '''Windows Forms'''.
 
{{Внимание|Данный модуль является специфическим для '''PascalABC.NET''' и не поддерживается другими диалектами '''Pascal''' и остальными языками.}}{{Внимание|В настоящее время '''рекомендуется''' использовать технологию [https://www.wpf-tutorial.com/ '''WPF'''] для создания оконных приложений под '''Windows'''. Кроссплатформенным аналогом является [https://avaloniaui.net/ '''Avalonia UI''']. Однако, данные технологии '''не поддерживаются''' в полной мере (например, для '''WPF''' отсутствует дизайнер форм и возможность писать на '''XAML''' из IDE) в '''PascalABC.NET'''. Для их использования рекомендуется применять такие среды разработки, как [https://visualstudio.microsoft.com/downloads/ '''Visual Studio'''] и [https://www.jetbrains.com/rider/download/ '''Rider'''].}}
 
=Основные классы=
'''FormsABC''' содержит следующие классы элементов управления формы:
# '''Button''' (кнопка) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.button?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''CheckBox''' (флажок) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.checkbox?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''RadioButton''' (радио-кнопка) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.radiobutton?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''IntegerField''' (поле ввода целых значений) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.textbox?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''RealField''' (поле ввода вещественных значений) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.textbox?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''Field''' (поле ввода строк) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.textbox?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''TextBox''' (многострочное текстовое поле) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.textbox?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''TrackBar''' (ползунок) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.trackbar?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''TextLabel''' (метка) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.label?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''ListBox''' (список) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.listbox?view=netcore-3.1 аналог в '''Windows Forms''']]
# '''ComboBox''' (разворачивающийся список) [[https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.combobox?view=netcore-3.1 аналог в '''Windows Forms''']]
==Button==
'''Button''' (наследуется от [https://docs.microsoft.com/en-us/dotnet/api/system.object?view=netcore-3.1 '''Object''']) - класс кнопки. Для ее создания пишите:
<syntaxhighlight lang="pascal">new Button({text});</syntaxhighlight>
, заменив '''{text}''' на текст на кнопке.
 
==CheckBox==
Checkbox'''CheckBox''' (наследуется от [https://docs.microsoft.com/en-us/dotnet/api/system.object?view=netcore-3.1 '''Object''']) - класс флажка. Для его создания пишите:
<syntaxhighlight lang="pascal">new CheckBox({text});</syntaxhighlight>
, заменив '''{text}''' на текст, относящийся к флажку.
 
==RadioButton==
'''RadioButton''' (наследуется от [https://docs.microsoft.com/en-us/dotnet/api/system.object?view=netcore-3.1 '''Object''']) - класс радио-кнопки. Для её создания пишите:
<syntaxhighlight lang="pascal">new RadioButton({text});</syntaxhighlight>
, заменив '''{text}''' на текст, относящийся к радио-кнопке.
 
==IntegerField==
'''IntegerField''' (наследуется от [[#Field|'''Field''']]) - класс однострочного поля ввода для целых чисел. Для его создания пишите:
<syntaxhighlight lang="pascal">new IntegerField({text}, {width});</syntaxhighlight>
, заменив '''{text}''' на текст, относящийся к полю и '''{width}''' на его ширину.
 
==RealField==
'''RealField''' (наследуется от [[#Field|'''Field''']]) - класс однострочного поля ввода для вещественных чисел. Для его создания пишите:
<syntaxhighlight lang="pascal">new RealField({text}, {width});</syntaxhighlight>
, заменив '''{text}''' на текст, относящийся к полю и '''{width}''' на его ширину.
 
==Field==
'''Field''' (наследуется от [https://docs.microsoft.com/en-us/dotnet/api/system.object?view=netcore-3.1 '''Object''']) - класс однострочного поля ввода для строк. Для его создания пишите:
<syntaxhighlight lang="pascal">new Field({text}, {width});</syntaxhighlight>
, заменив '''{text}''' на текст, относящийся к полю и '''{width}''' на его ширину.
 
==TextBox==
'''TextBox''' (наследуется от '''BaseDockControl''') - класс многострочного поля ввода для строк. Для его создания пишите:
<syntaxhighlight lang="pascal">new TextBox();</syntaxhighlight>
 
 
==TrackBar==
'''TrackBar''' (наследуется от [https://docs.microsoft.com/en-us/dotnet/api/system.object?view=netcore-3.1 '''Object''']) - класс ползунка. Для его создания пишите:
<syntaxhighlight lang="pascal">new TrackBar();</syntaxhighlight>
 
 
==TextLabel==
'''TextLabel''' (наследуется от [https://docs.microsoft.com/en-us/dotnet/api/system.object?view=netcore-3.1 '''Object''']) - класс метки. Для её создания пишите:
<syntaxhighlight lang="pascal">new TextLabel({text});</syntaxhighlight>
, заменив '''{text}''' на текст метки.
 
==ListBox==
'''ListBox''' (наследуется от [https://docs.microsoft.com/en-us/dotnet/api/system.object?view=netcore-3.1 '''Object''']) - класс списка. Для его создания пишите:
<syntaxhighlight lang="pascal">new ListBox();</syntaxhighlight>
 
 
==ComboBox==
'''ComboBox''' (наследуется от [https://docs.microsoft.com/en-us/dotnet/api/system.object?view=netcore-3.1 '''Object''']) - класс списка. Для его создания пишите:
<syntaxhighlight lang="pascal">new ComboBox();</syntaxhighlight>
 
 
=Свойства формы=
Настраивать главную форму можно через глобальную переменную '''mainForm'''.
 
{| class="wikitable sortable"
66

правок