Различия

Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.

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>
  
 
examples/visual/components.txt · Последние изменения: 29/10/2020 16:33 (внешнее изменение)
 
Recent changes RSS feed Valid XHTML 1.0 Valid CSS