In this lesson we are going to learn how to use the different attributes of A4gl like:
“Checkboxes” , “Combobox” , “Dateedit” and “Textedit”.
“Checkboxes” , “Combobox” , “Dateedit” and “Textedit”.
Now we create a new file named m_attributes.per
DATABASE FORMONLY SCREEN { Juice Voting! ————————————————————————————- Do you like Apple Juice? Yes [mx1 ] No [mx2 ] ————————————————————————————– When not choose one [mx3 ] [mx9 ] ————————————————————————————– Which date do you like it? [mx4 ] ————————————————————————————– From State [mx6 ] [mx7 ] ————————————————————————————– Other answers [mx5 ] [mx5 ] } ATTRIBUTES CHECKBOX mx1 = FORMONLY.mx1, COLOR=RED, REQUIRED, TEXT=”Yes”; CHECKBOX mx2 = FORMONLY.mx2, COLOR=BLUE, REQUIRED, TEXT=”No”; COMBOBOX mx3 = FORMONLY.ecombo, ITEMS=(”Banana Juice”,”Tomato Juice”); COMBOBOX mx9 = FORMONLY.color TYPE CHAR; DateEdit mx4 = FORMONLY.edate; TextEdit mx5 = FORMONLY.etext, UPSHIFT, VALUEMAX=40, STYLE=”normal” WANTTABS; BUTTONEDIT mx6 = FORMONLY.button, IMAGE=”f5″, ACTION=f5; BUTTONEDIT mx7 = FORMONLY.buttonhide, INVISIBLE; EDIT mx8 = FORMONLY.number, UNHIDABLE, INCLUDE=(0,1,2,3);
With DateEdit you can select a date through the integrated calendar, with “TextEdit” you can write a long text, “ComboBox” is for the pulldown that allows you to choose an option and with the “CHECKBOX” you can select the options with a click. In this example, you can see the different characteristic of the different attributes.
Now we create our main file named “m_attributes.4gl”
MAIN DEFINE edate CHAR(255), etext CHAR(255), ecombo CHAR(255), number INTEGER, button CHAR(255), string STRING CLOSE WINDOW screen CALL ui.Interface.loadActionDefaults(”default”) CALL ui.Interface.loadStyles(”default”) OPEN WINDOW attributes WITH FORM “m_attributes” MENU “Navigation” COMMAND “Ok” IF string IS NULL THEN LET string = “Please fill the Fields” END IF CALL auswert(string) COMMAND “Edit” CALL edit_date() RETURNING string COMMAND “Cancel” EXIT MENU END MENU END MAIN FUNCTION edit_date() DEFINE edate CHAR(255), etext CHAR(255), number INTEGER, ecombo CHAR(255), cb ui.Combobox, color CHAR(3), button CHAR(255), string STRING LET cb = ui.ComboBox.forName(color”) CALL cb.clear() CALL cb.addItem (”Yellow”, “Yellow Banana Juice”) CALL cb.addItem(”Red”, “Red Tomato Juice”) CALL cb.addItem(”Red”, “Red Apple Juice”) CALL cb.addItem(”Yellow”, “Yellow Apple Juice”) OPTIONS INPUT WRAP INPUT BY NAME edate, etext, number, ecombo, button BEFORE INPUT DISPLAY “00-00-0000″ TO edate AFTER FIELD edate IF edate IS NULL THEN LET edate = TODAY END IF END INPUT LET string = “Your Date: “, edate CLIPPED, “\n”, ”Your choose: “, ecombo CLIPPED, ” Color: “, color CLIPPED, “\n”, ”Number: “, number CLIPPED, “\n”, ”Other answers: “, etext CLIPPED, “\n” RETURN string END FUNCTION FUNCTION auswert(string) DEFINE string STRING MENU “Your Voting result:” ATTRIBUTE (STYLE =”dialog”, COMMENT = string CLIPPED) COMMAND “Ok” EXIT MENU RUN “fglgo attributes.4ae” END MENU END FUNCTION
Now you can compile this example with “4glpc m_attributes.4gl -o attributes.4ae” and see the result: