2011-09-06 93 views
0

在VB6中,我需要知道如何以其他形式調用按鈕單擊事件。另一個表單部分很簡單,但如何通過點擊事件正確的方法來「點擊」工具欄上的右鍵是真正的問題。調用工具欄按鈕從另一個表單單擊

這裏是主窗體上的發泄 - 我需要調用點擊事件案例「Copyfrom」。

的MainForm

Public Sub tbrMain_ButtonClick(ByVal Button As MSComctlLib.Button) 

Select Case Button.Index 
    Case ToolBarItem.tbPrint 

    '(some code) 

    Case ToolBarItem.tbSave 

    '(some code) 

    Case ToolBarItem.tbCopyFrom 

    '(some code) 

    Case ToolBarItem.tbNEW 

    '(etc) 

我試圖

Mainform.tbrMain_ButtonClick() 

,甚至試圖通過索引號和鑰匙 - 沒有骰子。

+0

@JeffK解釋如何做到這一點,但它通常是更好的做法,不叫事件處理程序,但都事件句柄爲每個按鈕/外部呼叫調用特定的方法。 – Deanna

+0

@Deanna:我同意。更好的是從From2中引發一個事件,並在Form1中有一個處理程序,它可以做你想做的事情。但我不想用所有額外的管道來解決我的問題。不幸的是,真正瞭解如何創建和使用他們自己的應用程序特定事件的是罕見的VB-er。 – JeffK

回答

1

事件處理程序期待接收參考到實際的工具欄按鈕,所以你必須通過工具欄按鈕本身,而不是它的CaptionKey,如:

Form1.tbrMain_ButtonClick Form1.tbrMain.Buttons(1) 

或者,使用Call聲明:

Call Form1.tbrMain_ButtonClick(Form1.tbrMain.Buttons(1)) 

如果設置在Key性質的工具欄按鈕,您可以使用所需的按鈕的Key財產地方(1):

Form1.tbrMain_ButtonClick Form1.tbrMain.Buttons("PrintButton") 
相關問題