ACCESS2003 組合框聯(lián)動(dòng)查詢_第1頁
ACCESS2003 組合框聯(lián)動(dòng)查詢_第2頁
ACCESS2003 組合框聯(lián)動(dòng)查詢_第3頁
ACCESS2003 組合框聯(lián)動(dòng)查詢_第4頁
ACCESS2003 組合框聯(lián)動(dòng)查詢_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、組合框之間的聯(lián)動(dòng)創(chuàng)建一個(gè)鄉(xiāng)鎮(zhèn)村屯窗體, 新建一個(gè)就行了,如下圖在窗體中加入三個(gè)組合框, 如下圖打開鄉(xiāng)組合框的屬性表, 更改名稱, 例如我將它改名為鄉(xiāng)名 行來源類型設(shè)置為:表/查詢點(diǎn)擊行來源右邊的.按鈕, 目的設(shè)置行來源加入地址表, 雙擊鄉(xiāng)字段, 這樣鄉(xiāng)的行來源就設(shè)置完畢了按上面提到的方法設(shè)置村組合框的行來源 , 在這里要添加二個(gè)字段, 一個(gè)是村, 另一個(gè)是鄉(xiāng), 在準(zhǔn)則中寫入條件:froms!窗體名!控件名寫入條件的目的是以鄉(xiāng)組合框的值進(jìn)行篩選, 這是關(guān)鍵!以上面同樣的方法設(shè)置屯組合框的行來源, 在這再增加屯字段, 在村字段的準(zhǔn)則中再增加準(zhǔn)則, 如下圖到止, 三個(gè)組合框的設(shè)置已經(jīng)完畢, 但組合框

2、還不可以聯(lián)動(dòng)的, 必須在各控件的更新事件寫入刷新代碼才能聯(lián)動(dòng), 代碼在下面講述在鄉(xiāng)組合框?qū)傩灾? 點(diǎn)擊更新后右邊的.按鈕, 寫入事件過程其更新后事件的代碼如下:Private Sub 鄉(xiāng)名_AfterUpdate() 更新后事件Me.村名.Requery 刷新村組合框的列表數(shù)據(jù)Me.村名 = 清空村組合框,防止數(shù)據(jù)錯(cuò)亂Me.屯名 = 清空屯組合框,防止數(shù)據(jù)錯(cuò)亂End Sub以同樣方法打開村組合框更新后事件過程, 寫入如下代碼Private Sub 村名_AfterUpdate()Me.屯名.Requery 刷新屯組合框的列表數(shù)據(jù)Me.屯名 = 清空屯組合框,防止數(shù)據(jù)錯(cuò)亂End SubOK 現(xiàn)在

3、各組合框可以聯(lián)動(dòng)了, 回到窗體視圖就可以看到效果以下再說一下組合框中常用的三個(gè)技巧技巧一. 單純上面的設(shè)置, 細(xì)心的壇友會(huì)發(fā)現(xiàn), 組合框展開的列表中為什么會(huì)有很多的重復(fù)數(shù)據(jù)? 如下圖可不可以顯示唯一數(shù)據(jù)呢? 答案是:可以的, 方法如下:打開行來源設(shè)置界面, 如下圖, 在空白處右擊, 打開一個(gè)設(shè)置窗體將唯一值的默認(rèn)值否改為是, 如下圖, 然后關(guān)閉再回到窗體視圖, 看看是不是全部的數(shù)據(jù)變成唯一值了?技巧二. 可不可以當(dāng)控件獲得焦點(diǎn)時(shí)自動(dòng)打開列表呢 ? 這樣可以實(shí)現(xiàn)純鍵盤操作, 不用點(diǎn)擊箭頭, 答案也是可以的打開控件的屬性, 在獲得焦點(diǎn)的事件過程中寫入代碼, 代碼如下:Private Sub 鄉(xiāng)名_

4、GotFocus() 獲得焦點(diǎn)事件Me.鄉(xiāng)名.Dropdown 展開列表數(shù)據(jù)End SubOK 再回到窗體視圖, 是不是獲得焦點(diǎn)的控件會(huì)自動(dòng)打開列表 ? 再按一下鍵盤的向下鍵, 是否可以用鍵盤選擇數(shù)據(jù)?技巧三. 當(dāng)組合框輸入數(shù)據(jù)時(shí), 在打開的列表中可否高亮顯示對(duì)應(yīng)的數(shù)據(jù)? 答案同樣可以打開控件的屬性, 將自動(dòng)展開設(shè)置為:是, 這樣在組合框輸入數(shù)據(jù)時(shí), 對(duì)應(yīng)最接近的數(shù)據(jù)就會(huì)高亮顯示, 不信的話你自己試下就知了這一節(jié)已講完.組合框使用教程(三)組合框行來源模糊篩選上一節(jié)講到,利用組合框與組合框之間進(jìn)行數(shù)據(jù)篩選,當(dāng)某一個(gè)組合框的行來源很多數(shù)據(jù),而又不能分類再篩選時(shí),能不能在組合框中自篩選呢?如果可行

5、的話相信在實(shí)際應(yīng)用中有一定的用途,本節(jié)就這個(gè)問題進(jìn)行探討。大家都知道,組合框的行來源可以寫入條件的,也可以寫入模糊查詢條件,如下圖這個(gè)語句說明當(dāng)組合框沒有數(shù)據(jù)時(shí),行來源全部列出數(shù)據(jù),而當(dāng)組合框有數(shù)據(jù)時(shí),模糊顯示相關(guān)數(shù)據(jù)條件有了,當(dāng)組合框輸入字符時(shí)必須刷新行來源才能模糊顯示相關(guān)數(shù)據(jù),但單純?cè)诮M合框的“更改”事件中寫入刷新語句,系統(tǒng)會(huì)彈出錯(cuò)誤提示,原因是組合框還沒有保存數(shù)據(jù),這樣是不能刷新的,能不能先保存數(shù)據(jù),然后再刷新組合框的行來源呢?本課程關(guān)鍵就是這一點(diǎn)。一個(gè)窗體正常情況下是不會(huì)只有一個(gè)控件的,這樣就給我們解決問題提供了便利,我們?cè)诮M合框的 “更改” 事件中寫入代碼,先將焦點(diǎn)移到別的控件上,然

6、后將組合框進(jìn)行刷新,最后再將點(diǎn)返回到組合框上,這樣就解決了先保存數(shù)據(jù),然后再刷新組合框的行來源的問題了,代碼如下:Private Sub 生產(chǎn)單位_Change() 組合框的更改后事件Me.列表 142.SetFocus 先將焦點(diǎn)移到別的控件上Me.生產(chǎn)單位.Requery 更新組合框的源數(shù)據(jù)Me.生產(chǎn)單位.SetFocus然后再將焦點(diǎn)返回到原組合框If Nz(生產(chǎn)單位) Then Me.生產(chǎn)單位.SelStart = Len(Me.生產(chǎn)單位) 如果組合框有數(shù)據(jù)時(shí)將焦點(diǎn)移到字符的后面Me.生產(chǎn)單位.Dropdown展開組合框的列表數(shù)據(jù)End Sub這里有一句代碼If Nz(生產(chǎn)單位) Then Me.生產(chǎn)單位.SelStart = Len(Me.生產(chǎn)單位) 如果組合框有數(shù)據(jù)時(shí)將焦點(diǎn)移到字符的后面焦點(diǎn)返回到組合框后,將焦點(diǎn)移到字符的最后面,沒

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論