bof( ) 函式
確定當前記錄指針是否在表頭。
語法
BOF([nWorkArea | cTableAlias])
參數
nWorkArea
指定在非當前工作區中打開的表所在的工作區號。
cTableAlias
指定在非當前工作區中打開的表別名。
如果表是在非當前選定工作區中打開的,那么使用這些可選的參數為表指定別名或所在的工作區號。若此表未在指定的工作區中打開,則 BOF( ) 返回“假”(.F.)。
返回值類型
邏輯型
說明
bof( ) 函式可以用來測試一個表的記錄指針是否位於文件頭。如果用戶嘗試將記錄指針移動到表的第一條記錄之前,則 BOF( ) 返回“真” (.T.)。
bof( ) 函式示例
下面的示例打開 customer 表並顯示一個視窗,使用命令按鈕可以向前或向後移動表的記錄指針,根據記錄指針移動的方向,visual foxpro 測試該指針是在檔案末尾 (eof) 還是在檔案頭 (bof)。如果任一條件為“真”(.t.),visual fexpro 顯示正確的內容,並移動記錄指針到一個新的位置。
close databases
open database (home( ) + 'samples\data\testdata')
use customer && 打開 customer 表
set talk off
clear
activate screen
@ 2,1 say 'company: '+ company
define window wskip from 9,10 to 14,65 double color scheme 5
activate window wskip
@ 1,5 get gnchoice function '*hn \<forward;\<backward;\<quit' ;
default 0 size 2,14 valid choice( )
read cycle
release window wskip
procedure choice
do case
case gnchoice = 1
skip
if eof('customer')
wait window 'end of file encountered' nowait
skip -1
endif
case gnchoice = 2
skip -1
if bof('customer')
wait window 'beginning of file encountered' nowait
go top
endif
case gnchoice = 3
clear read
endcase
activate screen
@ 2,1 clear to 2,50
@ 2,1 say 'company: '+ company
return .t.