Mousewheel events do not appear to work on window gadgets but seem to be working fine for me on any other gadget... as for mixing KEYDOWN events with MOUSE events, you could always toggle a logic point
Import maxgui.Drivers
Local My_Window:TGadget = CreateWindow("MaxGUITest", 0, 0, 300, 200, Null, WINDOW_TITLEBAR | WINDOW_CENTER)
Local My_Canvas:TGadget = CreateCanvas(0, 0, ClientWidth(My_Window), ClientHeight(My_Window), My_Window)
ActivateGadget(My_Canvas)
Repeat
WaitEvent()
Select EventID()
Case EVENT_WINDOWCLOSE
Select EventSource()
Case My_Window End
End Select
Case EVENT_MOUSEWHEEL
Select EventSource()
Case My_Canvas
DebugLog "MouseWheel detected: " + EventData() + " Mouse Wheel clicks"
End Select
Case EVENT_MOUSEDOWN
Select EventSource()
Case My_Canvas
If EventData() = 2 Then rmousedown = 1
End Select
Case EVENT_MOUSEUP
Select EventSource()
Case My_Canvas
If EventData() = 2 Then rmousedown = 0
End Select
Case EVENT_KEYDOWN
Select EventSource()
Case My_Canvas
If rmousedown = 1 Then
DebugLog "The Right mouse button is down and a key has been hit: " + EventData()
Else
DebugLog "a key has been hit: " + EventData()
EndIf
End Select
End Select
Forever