У меня есть родительское окно поверх того, что есть дочернее окно, как обрабатывать события мыши из дочернего окна в родительское окно.
вот мой код:
//parent class
IMPLEMENT_DYNAMIC_CLASS(MWParent, wxPanel)
BEGIN_EVENT_TABLE(MWParent, wxPanel)
EVT_LEFT_DCLICK(MWParent::OnMouseLeftDClick)
EVT_RIGHT_DOWN(MWParent::OnMouseRightclick)
END_EVENT_TABLE()
MWParent::MWParent()
{
}
MWParent::~MWParent()
{
}
MWParent::MWParent( wxWindow *win , long id ):wxPanel( win , id ){
MWChild *obj = new MWChild(this);
}
//child class
IMPLEMENT_DYNAMIC_CLASS(MWChild, wxPanel)
BEGIN_EVENT_TABLE(MWChild, wxPanel)
END_EVENT_TABLE()
MWChild::MWChild()
{
}
MWChild::~MWChild()
{
}
MWChild::MWChild( wxWindow *win , long id ):wxPanel( win , id ){
}
Используйте Bind() для подключения дочернего события к обработчику в любом другом окне, возможно, в родительском.
Дополнительную информацию см. В обзоре обработки событий.