VB數(shù)據(jù)庫數(shù)據(jù)的選項錄入及增減與編輯之三

字號:

在連續(xù)錄入的幾條記錄中,同名字段的內(nèi)容完全相同或基本相同,此時若能充分利用數(shù)據(jù)庫中的已有數(shù)據(jù),設(shè)置一個復(fù)制鍵將上條記錄中的同名字段的內(nèi)容復(fù)制到當(dāng)前記錄的同名字段中,將能大提高數(shù)據(jù)錄入速度。為了便于用戶操作,將這一功能賦予ctrl鍵,用戶在錄入新記錄或編輯原有記錄時,只要按下ctrl鍵,則上條記錄中的同名字段的內(nèi)容就復(fù)制到當(dāng)前記錄的同名字段中。程序如下:
    option explicit
    dim last as string
    private sub form-activate()
    dim mark as variant
    mark=data1.recordset.bookmark
    data1.recordset.movelast
    last=data1.recordset("name")
    data1.recordset.bookmark=mark
    end sub
    private sub text1-keydown
    (keycode as integer,shift as integer)
    if shift=2 then ’按下ctrl-key復(fù)制上條記錄中的同名字段的內(nèi)容
    if data1.recordset.editmode=dbeditinprogress
    or data1.recordset.editmode=dbeditadd then
    text1.text=last
    end if
    end if
    end sub
    private sub command1-click(index as integer)
    select case index
    case0’addnew
    data1.recordset.addnew
    text1.setfocus
    case1’edit
    data1.recordset.edit
    text1.setfocus
    case2’giveup
    data1.recordset.cance1update
    data1.refresh
    case3’save
    data1.recordset. update
    data1.recordset.movelast
    last=data1.recordset("name") ’save the text to last
    data1.refresh
    case4’delete
    data1.recordset.delete
    data1.refresh
    case5’end
    end
    end select
    end sub