0
我們有一個用C++ 6.0編寫的舊ActiveX控件。 它在VB6中正常工作。VB6中的C++自定義事件缺少參數
現在我想添加一個名爲OnNewPosition的自定義事件。 我使用類嚮導來設置此事件。
這是結果:
EVENT_CUSTOM("OnNewPosition", FireOnNewPosition, VTS_R8 VTS_R8 VTS_R8)
void FireOnNewPosition(double x, double y, double z)
{FireEvent(eventidOnNewPosition,EVENT_PARAM(VTS_R8 VTS_R8 VTS_R8), x, y, z);}
我也可以觸發這個事件
FireOnNewPosition(1 , 2 , 3);
在VB6中,我可以看到事件:
Private Sub G_OnNewPosition()
但參數丟失。 它看起來應該
Private Sub G_OnNewPosition(ByVal x As Double, ByVal y As Double, ByVal z As Double)
我已經試圖找出區別與其他類似事件是在C++方面的東西。 找不到一個區別:
EVENT_CUSTOM("OnSelect", FireOnSelect, VTS_I4)
void FireOnSelect(long id)
{FireEvent(eventidOnSelect,EVENT_PARAM(VTS_I4), id);}
這一個顯示在VB6的參數:
Private Sub G_OnSelect(ByVal id As Long)
什麼我錯過這裏?