Ⅰ 求VFP命令按鈕的代碼:上一條,下一條,首記錄,末記錄,刪除,添加,關閉
首先要有條件判斷記錄指針是否到達文件首。
上一條:
if
bof()
&&判斷記錄指針是否已經到達記錄首位置
go
top
&&判斷已在記錄首位置,將記錄指針移到記錄首位置
else
&&否則
skip
-1
&&記錄指針上移一條
endif
thisform.refresh
&&刷新當前表單。
下一次:
if
eof()
go
bottom
else
skip
1
endif
thisform.refresh
經visual
foxpro
6.0上機調試,正確不誤。希望採納。
Ⅱ VFP常用的命令代碼
VFP常用命令,函數,屬性,事件和方法
一. 常用命令
1. CREATE TABLE-SQL
創建一個含有指定欄位的表。
2. ALTER TABLE-SQL
以編程方式修改表的結構。
3. SELECT
激活指定工作區。
4. USE
打開一個表及其相關索引文件,或打開一個SQL視圖。
5. CLOSE TABLES
關閉所有打開資料庫中的所有表。
6. COPY STRUCTURE
用當前選擇的表結構創建一個新的空自由表。
7. COPY TO
用當前選定表的內容創建新文件。
8. RENAME TABLE
重命名當前資料庫中的表。
9. BROWSE
打開瀏覽窗口。
10. APPEND
在表的末尾添加一個或多個新記錄。
11. APPEND FROM
從一個文件中讀入記錄,添加到當前表的尾部。
12. GO/GOTO
將記錄指針移到指定記錄上。
13. LOCATE
按順序搜索表,從而找到滿足指定邏輯表達式的第一個記錄。
14. SEEK
在一個表中搜索首次出現的一個記錄。
15. SKIP
使記錄指針在表中向前或向後移動。
16. CONTINUE
繼續執行先前的LOCATE命令。
17. EDIT
顯示要編輯的欄位。
18. DELETE
給要刪除的記錄做標記。
19. DELETE-SQL
給要刪除的記錄做標記。
20. PACK
從當前表中永久刪除有刪除標記的記錄。
21. RECALL
恢復所選表中帶刪除標記的記錄。
22. ZAP
從表中刪除所有記錄。
23. INSERT-SQL
在表尾追加一個包含指定欄位值的記錄。
24. REPLACE
更新表的記錄內容。
25. UPDATE-SQL
以新值更新表中的記錄。
26. SET EXCLUSIVE
指定Visual FoxPro在網路上是以獨占方式,還是以共享方式打開表文件。
27. SET FILTER
指定訪問當前表中記錄時必須滿足的條件。
28. SET DELETED
指定Visual FoxPro 是否處理標有刪除標記的記錄。
29. SET INDEX
打開一個或多個索引文件,供當前表使用。
30. SET ORDER
指定表的主控索引文件或標識。
31. GATHER
將當前選定表中的當前記錄的數據替換為某個數組、內存變數組或對象中的數據。
32. SCATTER
從當前記錄中把數據復制到一組內存變數或數組中。
33. OPEN DATABASE
打開一個資料庫。
34. SET DATABASE
指定當前資料庫。
35. DELETE DATABASE
從磁碟上刪除資料庫。
36. DISPLAY DATABASE
顯示有關當前資料庫的信息。
37. MODIFY DATABASE
打開資料庫設計器,讓用戶能夠交互地修改當前資料庫。
38. VALIDATE DATABASE
保證當前資料庫中表和索引位置的正確性。
39. SELECT-SQL
從一個表或多個表中檢索數據。
40. DO
執行一個Visual FoxPro 程序或過程。
41. DO FORM
運行用表單設計器創建的、編譯過的表單或表單集。
42. REPORT
根據MODIFY REPORT或CREATE REPORE創建的報表定義文件,顯示或列印報表。
43. CALCULATE
對表中的欄位或包含欄位的表達式進行財務和統計操作。
二.常用函數
1. ABS(數值表達式)
返回指定數值表達式的絕對值。
2. ALLTRIM(字元表達式)
刪除指定字元表達式的前後空格符,並且返回刪除空格符後的字元串。
3. ASC(字元表達式)
返回字元表達式中最左邊字元的ANSI值。
4. AT(字元串1,字元串2[,N])
返回字元串1在字元串2中出現的位置(N為第幾次出現,省略為1)。
5. *ATC(字元串1,字元串2[,N]
同AT(字元串1,字元串2[,N]),不區分字元的大小寫。
6. BETWEEN(表達式1,表達式2,表達式3)
當表達式1的值大於等於表達式2的值而小於等於表達式3的值時,返回.T.,否則返回.F.。
7. BOF([工作區號/別名])
返回指定工作區號/別名當前記錄是否在表頭(省略工作區號/別名為當前工作區)。
8. CHR(數字)
數字在0---255之間,根據指定的ASCII碼,返回其對應的字元。
9. CREATEOBJFCT(類名[,參數1,參數2,…])
從類定義或支持OLE的應用程序創建對象。
10. CTOD(字元表達式)
把字元表達式轉換成日期表達式。
11. DATE()
返回當前系統日期。
12. DATATIME()
返回當前系統日期和時間。
13. DAY(日期)
返回該日期是某月中的第幾天。
14. DBGETPROP(cName,cType,cProperty)
返回當前資料庫的屬性,或返回當前資料庫中欄位、命名連接、表或視圖的屬性。
15. DBSETPROP(cName,cType,cProperty,ePropertyValue)
給當前資料庫或當前資料庫中的欄位、命名連接、表或視圖設置一個屬性。
16. DBUSED(資料庫名稱)
當指定的資料庫已打開時,返回.T.。
17. DELETED([工作區號/別名])
返回指定工作區號/別名當前記錄是否標有刪除標記(省略工作區號/別名為當前工作區)。
18. DTOC(日期表達式)
把日期表達式轉換成字元表達式
19. EMPTY(表達式)
確定表達式是否為空值。
20. EOF([工作區號/別名])
返回指定工作區號/別名當前記錄是否在表尾(省略工作區號/別名為當前工作區)。
21. FCOUNT([工作區號/別名])
返回表中欄位數目。
22. FILE(文件名的名稱)
如果在磁碟上找到指定的文件,返回.T.。
23. *FEOF(文件句柄號)
判斷文件指針的位置是否在文件尾部。
24. GETFILE()
顯示「打開」對話框,並返回選定文件的名稱。
25. IIF(邏輯表達式,表達式1,表達式2)
根據邏輯表達式的值,返回兩個值中的某一個。
26. INKEY([N])
返回一個編號,該編號對應鍵盤緩沖區中第一個按鍵操作。N為秒,是等待時間,如省略為一直等待直到有鍵按下。
27. INT(數值表達式)
返回其整數部分。
28. LEFT(字元串,個數)
從字元串最左邊一個字元開始返回指定數目的字元。
29. LEN(字元串表達式)
返回字元串表達式中字元的數目。
30. MAX(表達式1,表達式2[,表達式3,…])
對幾個表達式求值,並返回有最大值的表達式。
31. MESSAGEBOX()
顯示一個用戶自定義對話框(見學習指導)。
32. MIN(表達式1,表達式2[,表達式3,…])
對幾個表達式求值,並返回有最小值的表達式。
33. MOD(被除數,除數)
返回余數。
34. MONTH(日期)
返回月份值。
35. ORDER([工作區號/別名])
返回當前表或指定表的主控索引文件或標識。
36. RECCOUNT([工作區號/別名])
返回當前表或指定表中的記錄數目。
37. RECNO([工作區號/別名])
返回當前表或指定表中的當前記錄號。
38. RIGHT(字元串,個數)
從字元串最右邊字元開始返回指定數目的字元。
39. ROUND(數值表達式,位數)
四捨五入
40. SEEK(關鍵字)
在一個已索引的表中搜索一個記錄的第一次出現位置。
41. SPACE(N)
返回N個空格構成的字元串。
42. STR(數值表達式,長度,小數位數)
返回與數值表達式對應的字元串。
43. SUBSTR(字元串,開始位置,個數)
字元串截取。
44. TABLEREVERT()
放棄的緩沖行,緩沖表或臨時表的修改。
45. TABLEUPDATE()
執行對緩沖行,緩沖表或臨時表的修改。
46. TAG([復合索引文件名,]標識數[,工作區號/別名])
返回打開的CDX多項復合索引文件的標識名。
47. TIME()
返回當前系統時間。
48. TRIM(字元串表達式)
返回刪除全部後綴空格的指定字元串表達式。
49. TYPE(字元表達式)
計算字元表達式,並返回其內容的數據類型。
50. USED([工作區號/別名])
確定是否在指定工作區中打開了一個表。
51. VAL(字元表達式)
由數字組成的字元表達式返回數字值。
52. YEAY(日期)
返回年份。
53. CREATEOBJECT()
從類定義或支持OLE的應用程序中創建對象。
54. GETOBJECT()
激活OLE自動化對象,並創建此對象的引用。
Ⅲ 求VFP中通過4個命令按鈕來控制標簽(label1)實現向上移動,向下移動,向左移動,向右移動的代碼。
這個很簡單,我給你大概說下, 你自己弄弄,有問題再問.
四個按鈕分別是向上,向下,向左,向右
拿向上舉例, 按鈕的代碼就是減小top屬性, 但是注意不能小於0,如果檢測到小於0,就不能再減小top了,參考代碼如下:
向上按鈕的click事件代碼:
if thisform.label1.top>0
thisform.label1.top=thisform.label1.top-5 &&這里的5可以自己更改, 設的大每次變動的就大
endif
其他你可以參考上面的代碼, 下面寫注意點:
向下: 更改top屬性,必須小於等於thisform.label1.top+thisform.label1.height
向左:更改left屬性,必須大於等於0
向右:更改left屬性,必須小於等於thisform.label1.left+thisform.label1.width
Ⅳ vfp表單刪除按鈕的代碼
1、首先在表單設計器中,添加按鈕,如圖所示。
2、其次命令按鈕,click事件編寫代碼。
3、最後delete給當前記錄添加刪除標記就可以了。
Ⅳ 命令按鈕的事件怎麼寫。裡面的命令怎麼寫。vfp
1、把文本框2的readonly屬性設置為.t.
2、命令按鈕的click代碼如下
a=thisform.text1.value
x=''
for i=1 to len(a)
y=subs(a,i,1)
if y<>' '
x=x+y
endif
next
thisform.text2.value=x
Ⅵ vfp 寫出三個命令按鈕的click事件代碼
行程序按鈕:DO SRO1
刷新按鈕:THISFORM.REFRESH
文本框按鈕:THISFORM.TEXT1.VALUE="你好"
提示:TEXT1為文本框名,請填寫實際的文本框名,刷新按鈕還可以加一句:thisform.text1.value="" &&:清空文本框的內容
thisform.text1.setfucos &&:讓文本框獲得焦點
Ⅶ 有關vfp表單中命令按鈕的代碼
用text1.text是可以的,這個用法與VB一樣,VFP保留了這一用法,text為只讀,是存儲VALUE里的內容的,但並不存儲它的數據類型
文本框里如果寫入數值型的數字,那麼VALUE就認為它是數值型的,所以若與字元型的比較,還得加上STR()轉換一下,同樣若輸入是字元型的,與數值欄位相比較,必須轉換如上題VAL()才能不出錯,而用TEXT是純文字的,不必這樣了,可以直接使用,只是TEXT是只讀的,不能像VALUE賦值
Ⅷ vfp 命令按鈕代碼
代碼如下:
Private
Sub
Text1_KeyPress(KeyAscii
As
Integer)
'判斷輸入字元的Ascii碼,如果不符合英文Ascii碼就不進行任何操作
Select
Case
KeyAscii
Case
97
To
122
Case
65
To
90
Case
Else
KeyAscii
=
0
End
Select
End
Sub