Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
— |
examples:visual:components [29/10/2020 16:33] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Визуальное приложение. ====== | ||
+ | |||
+ | |||
+ | Примеры работы некоторых компонент ApplicationXML. | ||
+ | <code> | ||
+ | <AppXML title="AppXML" default-class-name="Lib" log-modifying-date="true" language="ru"> | ||
+ | <main> | ||
+ | <window id="mainWindow" location="center" height="600" width="800"> | ||
+ | <panel id="menuTree" position="left" width="150"> | ||
+ | <tree id="mTree"> | ||
+ | <treeitem id="inputFields_simple" text="Простые поля ввода"> | ||
+ | <onaction> | ||
+ | simpleInputFields:mainPanel; | ||
+ | </onaction> | ||
+ | </treeitem> | ||
+ | <treeitem id="lists" text="Списки"> | ||
+ | <onaction> | ||
+ | listsPanel:mainPanel; | ||
+ | </onaction> | ||
+ | </treeitem> | ||
+ | <treeitem id="tablists" text="Вкладки"> | ||
+ | <onaction> | ||
+ | tabsPanel:mainPanel; | ||
+ | </onaction> | ||
+ | </treeitem> | ||
+ | <treeitem id="panels" text="Панели"> | ||
+ | <onaction> | ||
+ | panelsPanel:mainPanel; | ||
+ | </onaction> | ||
+ | </treeitem> | ||
+ | <treeitem id="exit" text="Выход"> | ||
+ | <onaction> | ||
+ | mainWindow.close = true; | ||
+ | </onaction> | ||
+ | </treeitem> | ||
+ | </tree> | ||
+ | </panel> | ||
+ | <panel id="mainPanel"/> | ||
+ | </window> | ||
+ | </main> | ||
+ | |||
+ | <common> | ||
+ | <panel id="simpleInputFields" title="Простые поля ввода" gap="5"> | ||
+ | <panel layout="flow" align="left" position="top"> | ||
+ | <string id="st_id" text="Строка" width="400" | ||
+ | init-value="[Здесь можно печатать текст - любые символы]" | ||
+ | field-background-color="pink" length="2000"> | ||
+ | <onchanged> | ||
+ | st_l.text = "Событие onChanged объекта string. Значение = "; | ||
+ | st_l.text-after = this.value; | ||
+ | </onchanged> | ||
+ | <onenter> | ||
+ | st_l.text = "Событие onEnter объекта string."; | ||
+ | st_l.text-after = ""; | ||
+ | </onenter> | ||
+ | </string> | ||
+ | </panel> | ||
+ | <panel gap="5"> | ||
+ | <panel layout="flow" align="left" position="top"> | ||
+ | <memo id="memo_id" text="Многострочное поле ввода" width="400" rows="3" | ||
+ | max-chars="2000"> | ||
+ | <onchanged> | ||
+ | st_l.text = "Событие onChanged объекта memo. Значение = "; | ||
+ | st_l.text-after = this.value; | ||
+ | </onchanged> | ||
+ | <onenter> | ||
+ | st_l.text = "Событие onEnter объекта memo."; | ||
+ | st_l.text-after = ""; | ||
+ | </onenter> | ||
+ | </memo> | ||
+ | </panel> | ||
+ | <panel layout="flow" align="left"> | ||
+ | <number id="n_id" text="Число" mask="99999" width="90"> | ||
+ | <onchanged> | ||
+ | st_l.text = "Событие onChanged объекта number (Целое число). Значение = "; | ||
+ | st_l.text-after = this.value; | ||
+ | </onchanged> | ||
+ | <onenter> | ||
+ | st_l.text = "Событие onEnter объекта number (Целое число)."; | ||
+ | st_l.text-after = ""; | ||
+ | </onenter> | ||
+ | </number> | ||
+ | |||
+ | <number id="n_id" text="Число в формате #####.##" mask="99999.99" width="230"> | ||
+ | <onchanged> | ||
+ | st_l.text = "Событие onChanged объекта number (Число с плавающей запятой). Значение = "; | ||
+ | st_l.text-after = this.value; | ||
+ | </onchanged> | ||
+ | <onenter> | ||
+ | st_l.text = "Событие onEnter объекта number (Число с плавающей точкой)."; | ||
+ | st_l.text-after = ""; | ||
+ | </onenter> | ||
+ | </number> | ||
+ | |||
+ | <date id="date_id" text="Дата" mask="dd.MM.yy" width="100"> | ||
+ | <oncreated> | ||
+ | this.value = dtos(currentDate(), 'dd.MM.yy'); | ||
+ | </oncreated> | ||
+ | <onchanged> | ||
+ | st_l.text = "Событие onChanged объекта date. Значение = "; | ||
+ | st_l.text-after = this.value; | ||
+ | </onchanged> | ||
+ | <onenter> | ||
+ | st_l.text = "Событие onEnter объекта date."; | ||
+ | st_l.text-after = ""; | ||
+ | </onenter> | ||
+ | </date> | ||
+ | |||
+ | <time id="time_id" text="Время" mask="HH:ss" width="90"> | ||
+ | <oncreated> | ||
+ | this.value = dtos(currentDate(), 'HH:mm'); | ||
+ | </oncreated> | ||
+ | <onchanged> | ||
+ | st_l.text = "Событие onChanged объекта time. Значение = "; | ||
+ | st_l.text-after = this.value; | ||
+ | </onchanged> | ||
+ | <onenter> | ||
+ | st_l.text = "Событие onEnter объекта time."; | ||
+ | st_l.text-after = ""; | ||
+ | </onenter> | ||
+ | </time> | ||
+ | |||
+ | <checkbox id="ch_id" text="Чекбокс" text-position="right"> | ||
+ | <onchecked> | ||
+ | st_l.text = "Событие onChecked объекта checkbox! Флаг поднят."; | ||
+ | st_l.text-after = ""; | ||
+ | </onchecked> | ||
+ | <onunchecked> | ||
+ | st_l.text = "Событие onUnChecked объекта checkbox! Флаг опущен."; | ||
+ | st_l.text-after = ""; | ||
+ | </onunchecked> | ||
+ | </checkbox> | ||
+ | </panel> | ||
+ | </panel> | ||
+ | <statusbar> | ||
+ | <label id="st_l" text="Статусбар" color="blue" font-style="bold"/> | ||
+ | </statusbar> | ||
+ | </panel> | ||
+ | |||
+ | <panel id="listsPanel" title="Списки" gap="5"> | ||
+ | <panel position="top" layout="flow" align="left"> | ||
+ | <combo width="300" height="25" text="Выпадающий список"> | ||
+ | <comboitem name="Крокодил Гена" value="test1"/> | ||
+ | <comboitem name="Чебурашка" value="test2" default="true"/> | ||
+ | <comboitem name="Пятачок" value="test3"/> | ||
+ | <onselected> | ||
+ | lco.value = "Событие onselected, значение = " + this.value-text; | ||
+ | </onselected> | ||
+ | </combo> | ||
+ | <label id="lco" value="Чебурашка" field-color="red"/> | ||
+ | </panel> | ||
+ | <panel gap="5"> | ||
+ | <panel position="top" layout="flow" align="left"> | ||
+ | <list text="Список" height="60" width="200"> | ||
+ | <listitem name="Лис" value="list1"/> | ||
+ | <listitem name="Слон" value="list2"/> | ||
+ | <listitem name="Крокодил" value="list3" default="true"/> | ||
+ | <listitem name="Собака" value="list4"/> | ||
+ | <listitem name="Волк" value="list5"/> | ||
+ | <listitem name="Ежик" value="list6"/> | ||
+ | <listitem name="Кот" value="list7"/> | ||
+ | <onchanged> | ||
+ | llist.value = "Событие onchanged, значение = " + this.value-text; | ||
+ | </onchanged> | ||
+ | <onselected> | ||
+ | llist.value = "Событие onselected (двойное нажатие мышью), значение = " + this.value-text; | ||
+ | </onselected> | ||
+ | </list> | ||
+ | <label id="llist" value="Крокодил" field-color="pink"/> | ||
+ | </panel> | ||
+ | <panel layout="flow" align="left"> | ||
+ | <radio order="horizontal" text="Радиокнопка"> | ||
+ | <radioitem name="Домашние" value="radio1" default="true"/> | ||
+ | <radioitem name="Дикие" value="radio2"/> | ||
+ | <radioitem name="Смесь" value="radio3"/> | ||
+ | <onaction> | ||
+ | lra.value = "Событие onaction, выбранное значение = " + this.value-text; | ||
+ | </onaction> | ||
+ | </radio> | ||
+ | <label id="lra" value="Домашние" field-color="blue"/> | ||
+ | </panel> | ||
+ | </panel> | ||
+ | </panel> | ||
+ | |||
+ | <panel id="tabsPanel"> | ||
+ | <toolbar> | ||
+ | <toolbaritem id="addTab" text="Добавить вкладку"> | ||
+ | <onaction> | ||
+ | if (!tab_id.hasItems()){ | ||
+ | tab_id.visible = true; | ||
+ | } | ||
+ | var b = tab_id.addItem(); | ||
+ | tab_id.setCurrentItem(b.id); | ||
+ | tab_id.getCurrentItem().title = "Вкладка №" + tab_id.getCurrentItem().id; | ||
+ | </onaction> | ||
+ | </toolbaritem> | ||
+ | <toolbaritem id="delTab" text="Удалить вкладку"> | ||
+ | <onaction> | ||
+ | tab_id.removeItem(tab_id.getCurrentItem()); | ||
+ | if (!tab_id.hasItems()){ | ||
+ | tab_id.visible = false; | ||
+ | } | ||
+ | </onaction> | ||
+ | </toolbaritem> | ||
+ | </toolbar> | ||
+ | <tablist id="tab_id" visible="false"/> | ||
+ | </panel> | ||
+ | |||
+ | <panel id="panelsPanel" layout="flow" margin-top="100"> | ||
+ | <panel layout="border" position="center" | ||
+ | width="300" height="200" margin="2" border="line:red" | ||
+ | background-color="pink"> | ||
+ | <panel layout="flow" position="left" width="50" border="line:blue" margin="1"> | ||
+ | <label text="Я панель"/> | ||
+ | <label text="СЛЕВА"/> | ||
+ | </panel> | ||
+ | <panel layout="flow" position="top" height="50" border="line:blue" margin="1"> | ||
+ | <label text="Я панель"/> | ||
+ | <label text="СВЕРХУ"/> | ||
+ | </panel> | ||
+ | <panel layout="flow" position="bottom" height="50" border="line:blue" margin="1"> | ||
+ | <label text="Я панель"/> | ||
+ | <label text="СНИЗУ"/> | ||
+ | </panel> | ||
+ | <panel layout="flow" position="right" width="50" border="line:blue" margin="1"> | ||
+ | <label text="Я панель"/> | ||
+ | <label text="СПРАВА"/> | ||
+ | </panel> | ||
+ | <panel layout="flow" align="center" margin="1" border="line:green"> | ||
+ | <label icon="res:world.gif" margin-top="20"/> | ||
+ | </panel> | ||
+ | </panel> | ||
+ | </panel> | ||
+ | </common> | ||
+ | </AppXML> | ||
+ | </code> | ||