八。為表單創建新屬性:
1.打開表單,單擊"表單"菜單,選"新建屬性"菜單項,系統彈出"新建屬性"對話框
2.在該對話框的"名稱"框中輸入屬性名,同時可在說明框中加上該屬性的注釋,單擊"添加"即可,如圖8
3.選access項和assign項,則在新建表單屬性的同時創建該屬性對應的方法程序,其中access方法在查詢該屬性時被執行,assign方法程序在修改該屬性時被執行。
4.單擊對話框中的"關閉"按鈕,該屬性即被添加到"屬性"窗口中,選中表單,在"屬性"窗口中可選中并檢查該屬性,如圖9
Visual FoxPro基礎教程完整版九。為表單創建新方法程序:
1.打開表單,單擊"表單"菜單,選"新建方法程序"菜單,系統顯示"新建方法程序"對話框
2.輸入方法程序的名稱后,單擊"添加"按鈕即可,如圖10.
方法程序代碼應在"屬性"窗口的"方法程序"選項卡中選擇該方法程序名雙擊,在彈出的編輯器中輸入方法程序。新建的方法程序的執行方法與系統提供的方法程序相同。
十。例一:制作表單xggz.scx,修改人員工資數據。
1.新建一個表單,右擊表單空白處,將"工資情況"表添加到數據環境中
2.在"數據環境設計器"中,將"工資情況"表的各個字段,依次拖到表單上,如圖11,
并調整它們的位置,全部字段拖到表單上后,如圖12
3.向表單添加5個命令按鈕:command1,command2,command3,command4和command5,將它們的caption屬性依次設為"第一個","上一個","下一個","最后一個","退出",并調整它們的位置,如圖13.
再次說明一下修改控件屬性的方法:以command1為例,在"表單設計器"中選中command1,其四周出現黑色方塊,表明已被選取。然后在"屬性"窗口中選"全部"選項卡,拖動滾動條,選中caption屬性,在上方的文本框中輸入屬性值:第一個,如圖14
4.將表單的caption屬性(即標題欄顯示的內容)設為"修改工資",autocenter屬性設為。T.(此屬性設為真,運行時表單自動居中).
5.編寫代碼:* "第一個"按鈕(command1)的click事件代碼:
go top
thisform.refresh &&刷新顯示
*"上一個"按鈕(command2)的click事件代碼:
if !bof()
skip -1 &&如果當前記錄不是首記錄,則向上移動一位記錄指針
endif
thisform.refresh
*"下一個"按鈕(command3)的click事件代碼:
if !eof()
skip &&如果當前記錄不是最后一條記錄,向下移動一位記錄指針
endif
thisform.refresh
*"最后一個"按鈕(command4)的click事件代碼:
go bottom
thisform.refresh
*"退出"按鈕(command5)的click事件代碼:
tui=messagebox("您確實要退出嗎?",4+64,"提示信息")
if tui=6 &&如果此條件為真,說明運行時用戶點了消息框中的"是",執行thisform.release釋放表單
thisform.release
clear events
endif6.保存表單到e:myvfp,名為"xggz"
7.運行表單,
十一。例二:表單調用舉例:建立一個名為diaoyong的程序文件,用程序代碼調用例一中建立的xggz.scx表單
1.在命令窗口輸入命令:modify command diaoyong,在彈出的代碼窗口中輸入如下代碼:
set default to e:myvfp
do form xggz
read events2.在命令窗口如下命令執行程序:
do diaoyong十二。例三:表單內部控件的事件發生順序
1.新建一個表單,添加三個命令按鈕,如圖16
2.添加事件代碼:*表單的load事件:messagebox("form1.load")
*表單的inint事件:messagebox("form1.init")
*表單的click事件:messagebox("form1.click")
*表單的destroy事件:messagebox("form1.destroy")
*command1的init事件:messagebox("command1.init")
*command2的init事件:messagebox("command2.init")
*command3的init事件:messagebox("command3.init")*commadn1的click事件:messagebox("command1.click")
3.保存表單文件為li3.scx,目錄為e:myvfp.運行li3.scx,觀察事件發生的先后順序。
十三。例四:修改表單li3.scx:
1.在命令窗口依次輸入下面兩條命令,打開表單li3.scx
set default to e:myvfp
modify form li3.scx2.向表單中添加一個文本框text1,為text1編寫下列事件代碼:
*text1的when事件:messagebox("text1.when")
*text1的gotfocus事件:messagebox("text1.gotfocus")
*text1的valid事件:
messagebox("text1.valid")
return .t.
*text1的lostfocus事件:messagebox("text1.lostfocus")3.運行表單,單擊text1文本框,觀察文本框對象事件發生的先后順序
4.將text1的valid事件的返回值改為。F.(即return .F.),運行表單,單擊text1文本框,觀察有何不同。生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
![]()