Data-Controls II: TEXTBOX, DATEPICKER, CHECKBOX, EDITBOX

The 'data-version' of these controls required the use of the following properties \/ methods to bound them to a database field:

Field Property: Stablishes the field that control is bounded to.

Refresh Method: Updates control content based on current field content.

Save method: Updates database file according control content.

#include "hmg.ch"
Function Main
    DEFINE WINDOW Win_1 ;
        AT 0,0 ;
        WIDTH 640 ;
        HEIGHT 480 ;
        TITLE 'Tutor 20 - Data-Bound Controls Test' ;
        MAIN ;
        ON INIT OpenTables() ;
        ON RELEASE CloseTables()
        DEFINE TOOLBAR ToolBar_1 BUTTONSIZE 100,30 FLAT RIGHTTEXT BORDER
            BUTTON TOP ;
                CAPTION '&Top' ;
                PICTURE 'primero.bmp' ;
                ACTION ( DbGoTop() , Refresh() )
             BUTTON PREVIOUS ;
                CAPTION '&Previous';
                PICTURE 'anterior.bmp' ;
                ACTION ( DbSkip(-1) , Refresh() )
             BUTTON NEXT ;
                CAPTION '&Next';
                PICTURE 'siguiente.bmp' ;
                ACTION ( DbSkip(1) , if ( eof() , DbGoBottom() , Nil ) , Refresh() )
            BUTTON BOTTOM ;
                CAPTION '&Bottom' ;
                PICTURE 'ultimo.bmp' ;
                ACTION ( DbGoBottom() , Refresh() )
            BUTTON SAVE ;
                CAPTION '&Save' ;
                PICTURE 'guardar.bmp' ;
                ACTION ( Save() , Refresh() )
            BUTTON UNDO ;
                CAPTION '&Undo' ;
                PICTURE 'deshacer.bmp' ;
                ACTION ( Refresh() )
        END TOOLBAR 
        @ 50,10 LABEL LABEL_1 VALUE 'Code:'
        @ 80,10 LABEL LABEL_2 VALUE 'First Name'
        @ 110,10 LABEL LABEL_3 VALUE 'Last Name'
        @ 140,10 LABEL LABEL_4 VALUE 'Birth Date:'
        @ 170,10 LABEL LABEL_5 VALUE 'Married:'
        @ 200,10 LABEL LABEL_6 VALUE 'Bio:'
        @ 50,200 TEXTBOX TEXT_1;
            FIELD TEST->CODE ;
            NUMERIC ;
            MAXLENGTH 10
        @ 80,200 TEXTBOX TEXT_2;
            FIELD TEST->FIRST ;
            MAXLENGTH 30
         @ 110,200 TEXTBOX TEXT_3;
            FIELD TEST->LAST ;
            MAXLENGTH 30
        @ 140,200 DATEPICKER DATE_4 ;
            FIELD Test->Birth
        @ 170,200 CHECKBOX CHECK_5 ;
            CAPTION '' ;
            FIELD Test->Married 
        @ 200,200 EDITBOX EDIT_6 ;
            FIELD Test->Bio ;
            HEIGHT 100
    END WINDOW
    Win_1.Text_1.SetFocus
    ACTIVATE WINDOW Win_1
Return Nil

Procedure Refresh
    Win_1.Text_1.Refresh
    Win_1.Text_2.Refresh
    Win_1.Text_3.Refresh
    Win_1.Date_4.Refresh
    Win_1.Check_5.Refresh
    Win_1.Edit_6.Refresh
    Win_1.Text_1.SetFocus
Return

Procedure Save
    Win_1.Text_1.Save
    Win_1.Text_2.Save
    Win_1.Text_3.Save
    Win_1.Date_4.Save
    Win_1.Check_5.Save
    Win_1.Edit_6.Save
Return

Procedure OpenTables 
    USE TEST
Return

Procedure CloseTables
    USE
Return

results matching ""

    No results matching ""