国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
VFP查詢系統(tǒng)實現(xiàn)技巧六則
用VFP6.0編寫完整的應(yīng)用程序時查詢系統(tǒng)往往是不可缺少的重要部分。而開發(fā)一個優(yōu)秀的查詢系統(tǒng)需要很多的應(yīng)用技巧。由于工作原因,筆者經(jīng)常開發(fā)查詢系統(tǒng)模塊,現(xiàn)將個人編程中總結(jié)的一些技巧介紹給大家,希望對讀者的應(yīng)用開發(fā)有所幫助。

  任務(wù)進度條的實現(xiàn)

  在查詢的過程中,如果數(shù)據(jù)較多,需要用戶等待時,查詢系統(tǒng)中應(yīng)有進度條加以顯示,才能使系統(tǒng)更加具有規(guī)范性。具體實現(xiàn)方法如下:

  1.選擇VFP的系統(tǒng)選單“工具”中“選項”條,彈出“選項”窗口,在窗口中點擊“ActiveX控件”欄,添加任務(wù)進度欄控件Microsoft ProgressBar Control Version5.0(SP2)至ActiveX工具箱中。

  2.選定表單控件工具欄中“ActiveX控件”,添加控件Microsoft ProgressBar Control Version6.0至查詢的表單Form1中,并設(shè)置其屬性Max值為1000。

  3.將下列代碼添加到數(shù)據(jù)查詢程序代碼之后:

for i=1 to 1000
for j=1 to 2000
j=j+1
endfor
thisform.olecontrol1.value=i
i=i+1
endfor
messagebox('數(shù)據(jù)查詢完畢,OK!',0+64)
thisform.release
clear events
  通過這樣的設(shè)置,在查詢時如果時間較長,查詢進度條會為用戶顯示查詢?nèi)蝿?wù)的運行情況。

  應(yīng)用宏命令實現(xiàn)組合查詢

  在組合查詢中,需要查詢的組合項通常很多,如果每項都使用不同的變量,編程會非常煩瑣。筆者使用宏命令輕松實現(xiàn)查詢組合條件,具體實現(xiàn)的方法是在查詢按鈕里加入如下代碼:

LOCAL cFilter,nCnt,cCondition
FOR nCnt = 1 to THISFORM.ControlCount
IF TYPE('THISFORM.Controls(nCnt).controlSource') <> "U" THEN
IF !EMPTY(THISFORM.Controls(nCnt).ControlSource) AND ;
TYPE('THISFORM.Controls(nCnt).value') <> "U" THEN cCondition=THIS.Parent.parseCondition(THISFORM.Controls(nCnt).value,THISFORM.Controls(nCnt).controlSource)
IF !EMPTY(cCondition) THEN
cFilter = cFilter + " AND " cCondition
ENDIF
ENDIF
ENDIF
ENDFOR
  通過這樣的設(shè)置,雖然有多個查詢條件,但查詢的組合條件為cFilter,以后的應(yīng)用只要對cFilter進行處理即可。

  刪除查詢表中的空記錄

  使用類查詢(_dataquery.vcx)時,會在待查詢表中的最后自動插入一條空記錄,而在實際的GRID表格顯示中,我們是不希望將空記錄顯示出來的。下面是解決此問題的詳細步驟:

  1.在主程序或Form對象的Load事件輸入以下代碼:

  SET DELETE ON

  2.在查詢結(jié)束代碼后輸入以下代碼:

  Thisform.Refresh    

  &&&&刷新表單

  go bottom

  delete next 1   

  &&&&因為當(dāng)前表被添加了一個空記錄,在實際應(yīng)用中應(yīng)刪除掉

  Thisform.Grid1.Column1.Setfocus

  go top

  Thisform.grid1.refresh   

  &&&&刪除一條記錄后,應(yīng)及時地刷新GRID表

  實現(xiàn)中英文自動切換

  在用VFP6.0開發(fā)查詢系統(tǒng)時,文本框?qū)ο蠛徒M合框?qū)ο髴?yīng)用得較多,在文本框中進行中英文的輸入時,來回切換非常煩瑣,所以筆者借助自定義子類,來實現(xiàn)中英文輸入的自動切換。具體實現(xiàn)的步驟如下:

  1.點擊VFP6系統(tǒng)選單欄“文件→新建→類”,啟動“新類”對話框,填入類名為gsTextBox,并設(shè)置父類為TextBox,在“存儲于”欄處輸入存儲的位置和名稱,按“確定”鍵進入類設(shè)計器畫面。

  2.新增一個屬性,來作為對象是否啟動中文輸入法的控制碼。通過系統(tǒng)選單欄“類→新建屬性...”,啟動“新建屬性”對話框,設(shè)置一些屬性,其中可視性設(shè)為public。

  3.最后設(shè)置GotFocus與LostFocus事件過程。Gotfocus Event事件過程如下:

  If thischinese

  &&&&中英文選擇,thischinese為邏輯量

    =imestatus(1)

    else

    =imestatus(0)

    endif

    Lostfocus Event事件過程如下:

    =imestatus(0)

  至此,類已經(jīng)定義完成,以后只要在設(shè)計表單時,通過表單控件“工具欄→查看類→添加...”把自定義類加入,并且設(shè)置“中英文選擇”屬性,即可實現(xiàn)中英文輸入的自動切換。

  實現(xiàn)整條記錄突出顯示

  在用VFP設(shè)計一個查詢應(yīng)用系統(tǒng)時,信息的瀏覽是相當(dāng)重要的功能之一,通常采用的實現(xiàn)方法是用Grid對象來顯示數(shù)據(jù)信息,但在使用過程中卻存在一些不足,就是當(dāng)使用者在記錄之間移動時,只有獲得焦點的那條記錄的某一字段可以以不同于Grid背景的顏色顯示,很不醒目。

  筆者利用Grid對象,成功實現(xiàn)了當(dāng)數(shù)據(jù)記錄移動時,整條記錄均用同一種顏色突出顯示,即當(dāng)數(shù)據(jù)記錄移動時,用顏色動態(tài)變化顯示相對光標所在的位置,設(shè)計步驟如下:

  首先定義一個Grid對象,并設(shè)置好其屬性,然后在其AfterRowColChange事件過程中添加如下代碼:

  LPARAMETERS nColIndex

  this.setall("dynamicbackcolor","iif(this.activerow〈〉recn(),rgb(255,255,255),rgb(0,0,255))","column")

  利用以上代碼,我們就能達到當(dāng)數(shù)據(jù)記錄移動時,其相對的Row顯示動態(tài)顏色變化。

  在上面的設(shè)計中,我們首先使用了SetAll() 方法設(shè)定Grid中的Column層次的 DynamicBackColor(動態(tài)背景顏色屬性),然后在第二個參數(shù)中使用了Grid 對象的ActiveRow反映相對的行數(shù),若不等于記錄編號時,則通過 RGB(255,255,255) 送出白色背景,若相對行等于記錄編號時,則通過 RGB(0,0,255)送出綠色背景色,而該顏色也可自行設(shè)定。

  用Grid模擬Browse窗口

  可以將Grid結(jié)合在Form對象中,模擬成一個Browse命令窗口,可以自由調(diào)整Form大小,而Grid對象也會自動調(diào)整大小。實現(xiàn)方法如下:

  1.首先設(shè)定一個Form對象,該對象必須保留其BorderStyle為“3-可調(diào)邊框”,這樣可自由調(diào)整大小的邊線屬性,同時設(shè)定Resize事件程序如下:

  Thisform.Grid1.Width=this.width

  Thisform.Grid1.Height=this. Height

  2.設(shè)計一個Grid對象于Form對象中,并設(shè)定其屬性如下:

  Width=Thisform.Width

  Height=Thisform.Height

  RecordSource設(shè)為目前“數(shù)據(jù)環(huán)境”中所設(shè)定的工作區(qū)別名;

  Top與Left均設(shè)為0,表示該對象左上端坐標為0,0。

  這樣,已經(jīng)設(shè)定好的Grid對象和Browse窗口一樣,當(dāng)對Form對象進行大小調(diào)整時,對象的高度與寬度就可以隨之調(diào)整
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
看實例學(xué)VFP:模糊查詢
編程入門網(wǎng)
Vfp中Grid的使用技巧
巧用VFP的Grid表格控件
在VFP中實現(xiàn)字符的淡出淡入
陳純BOE《VFP 6.0中的_Assign方法》
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服