第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

VBA:在UserForms上使用WithEvents

VBA:在UserForms上使用WithEvents

VBA:在UserForms上使用WithEvents我有一個Word用戶表單,包含60多種不同類型的控件。我想在每次觸發(fā)control_change事件時評估表單并更改表單的提交按鈕的啟用狀態(tài)。但是,我真的不想在更改事件處理程序上編寫和維護60。
查看完整描述

3 回答

?
千萬里不及你

TA貢獻1784條經(jīng)驗 獲得超9個贊

您可以創(chuàng)建一個事件接收器類,它將包含特定類型的所有控件的事件處理代碼。


例如,創(chuàng)建一個名為的類TextBoxEventHandler,如下所示:


Private WithEvents m_oTextBox as TextBox


Public Property Set TextBox(ByVal oTextBox as TextBox)

    Set m_oTextBox = oTextBox

End Property


Private Sub m_oTextBox_Change()

    ' Do something

End Sub

現(xiàn)在,您需要為表單上的相應類型的每個控件創(chuàng)建并連接該類的實例:


Private m_oCollectionOfEventHandlers As Collection


Private Sub UserForm_Initialise()


    Set m_oCollectionOfEventHandlers = New Collection


    Dim oControl As Control

    For Each oControl In Me.Controls


        If TypeName(oControl) = "TextBox" Then


            Dim oEventHandler As TextBoxEventHandler

            Set oEventHandler = New TextBoxEventHandler


            Set oEventHandler.TextBox = oControl


            m_oCollectionOfEventHandlers.Add oEventHandler


        End If


    Next oControl


End Sub

請注意,您需要將事件處理程序?qū)嵗砑拥郊系脑蛑皇菫榱舜_保它們?nèi)匀槐灰?,因此在您完成它們之前不會被垃圾收集器丟棄。


顯然,這種技術可以擴展到處理其他類型的控制。您可以為每種類型分別設置事件處理程序類,也可以為需要處理的每種控件類型使用一個具有成員變量(以及關聯(lián)的屬性和事件處理程序)的類。


查看完整回答
反對 回復 2019-08-28
  • 3 回答
  • 0 關注
  • 1040 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號