2014-06-26 50 views
0

我有一個其上有4個其他子表單的MainForm。根據用戶在主窗體上的選擇,這些子窗體是可見和不可見的。可見/不可見的作品就像一個魅力,但我在設置這些子窗體的焦點時遇到了麻煩。我在做什麼:SetFocus屬性和Access中的子表格的問題

在組合框的變化事件使一個子窗體可見,然後我想把我的重點放在該窗體上,但我不斷收到運行時2110錯誤。我注意到這是因爲我的主窗體上的所有字段都是必填字段,並且訪問權限無法傳輸焦點,除非這些字段已填滿(setfocus在所有字段填充到主窗體中時都會運行)。現在填寫所有的字段,然後去到子窗體是違反直覺的,因爲它不是如何輸入數據將流動。

所以我的問題是-----如何讓我的焦點轉移到我的子表單之前必須填寫所有必需的字段在mainform!?

一如既往的高度讚賞所有幫助!謝謝!

回答

1

恕我直言,如果主窗體綁定到記錄源是不可能的。無論何時Access將焦點從表單移開,它的默認行爲是保存更改(如果有)。因此,它總是需要一個有效的記錄(即沒有更改或有效的更改)。

如果子窗體記錄具有與主窗體的記錄源具有外鍵關係的記錄源,則還需要創建主窗體的PK - 這通常是在保存時生成的串行。如果你沒有記錄,你沒有PK作爲FK傳遞。

唉,如果主窗體和子窗體之間沒有任何關係(也就是說你不需要PK),那麼可能會使主窗體解除綁定並通過點擊按鈕保存它的內容,以便允許用戶在切換到子窗體之前輸入一半的數據。

當然,你將不得不處理用戶在子表單中插入數據,然後不能完成主窗體上的字段的情況。

+0

是的,經過很多搜索,我得出了同樣的結論。如果我想用我的約束在表單和子表單之間跳轉,則必須創建未綁定的文本框。哦,讓我們看看我能做些什麼!謝謝 –