DeleteControl 方法從窗體中刪除一個(gè)指定的控件。
expression.DeleteControl(FormName, ControlName)
expression 必需。返回“應(yīng)用于”列表中的一個(gè)對(duì)象的表達(dá)式。
FormName 必需 String 型。字符串表達(dá)式,用于標(biāo)識(shí)包含要?jiǎng)h除控件的窗體或報(bào)表的名稱。
ControlName 必需 String 型。字符串表達(dá)式,用于標(biāo)識(shí)要?jiǎng)h除的控件的名稱。
例如,假定有一個(gè)在每個(gè)用戶第一次登錄到數(shù)據(jù)庫時(shí)都必須執(zhí)行的過程??梢詫⒋绑w上按鈕的 OnClick 屬性設(shè)為該過程。當(dāng)用戶登錄且運(yùn)行該過程后,就可以使用 DeleteControl 方法從窗體中動(dòng)態(tài)刪除這個(gè)命令按鈕。
DeleteControl 方法分別僅在窗體“設(shè)計(jì)”視圖或報(bào)表“設(shè)計(jì)”視圖中才可用。
注釋 如果正建立一個(gè)從窗體或報(bào)表中刪除控件的向?qū)В撓驅(qū)П仨毾仍?/span>“設(shè)計(jì)”視圖中打開這個(gè)窗體或報(bào)表,然后才能刪除控件。
下面的示例創(chuàng)建帶有命令按鈕的窗體,并且顯示提示信息詢問用戶是否要?jiǎng)h除這個(gè)命令按鈕。如果用戶單擊“是”,則該命令按鈕被刪除。
Sub DeleteCommandButton()
Dim frm As Form, ctlNew As Control
Dim strMsg As String, intResponse As Integer, _
intDialog As Integer
' Create new form and get pointer to it.
Set frm = CreateForm
' Create new command button.
Set ctlNew = CreateControl(frm.Name, acCommandButton)
' Restore form.
DoCmd.Restore
' Set caption.
ctlNew.Caption = "New Command Button"
' Size control.
ctlNew.SizeToFit
' Prompt user to delete control.
strMsg = "About to delete " & ctlNew.Name &". Continue?"
' Define buttons to be displayed in dialog box.
intDialog = vbYesNo + vbCritical + vbDefaultButton2
intResponse = MsgBox(strMsg, intDialog)
If intResponse = vbYes Then
' Delete control.
DeleteControl frm.Name, ctlNew.Name
End If
End Sub