2010-03-01 4 views

답변

2

가장 쉬운 방법은 컨트롤과 동일한 유형의 모듈 수준 변수를 선언하고 WithEvents 키워드를 사용하는 것입니다. 하나의 중앙 일상을 통해, 다른 유형의 아마, 많은 다른 컨트롤에서 이벤트를 처리 할 수 ​​있도록하려면 예를

Option Explicit 
' Declare object variable as CommandButton and handle the events.' 
Private WithEvents cmdObject As CommandButton 

Private Sub Form_Load() 
    'Add button control and keep a reference in the WithEvents variable' 
    Set cmdObject = Form1.Controls.Add("VB.CommandButton", "cmdOne") 
    cmdObject.Visible = True 
    cmdObject.Caption = "Dynamic CommandButton" 
End Sub 

'Handle the events of the dynamically-added control' 
Private Sub cmdObject_Click() 
    Print "This is a dynamically added control" 
End Sub 

을 위해 더 복잡한 변화가있다.

2

컨트롤이 내장되어 있는지 여부에 따라 다릅니다.

This 기사에서 설명합니다.

+0

정확하지 않음. 프로젝트에 대한 참조를 컨트롤에 추가했는지 여부에 따라 다릅니다. 거의 언제나 참조를 추가하는 것이 좋습니다. 참조가 있다고 가정하고 대답을 작성했습니다. – MarkJ

관련 문제