wxSpinCtrl未生成事件
wxSpinCtrl not Generating Events
我创建了一个名为ValCtrl的类,它扩展了wxPanel。每个实例都管理一个wxCheckBox、一个wxSlider和一个wxrinCtrl。我正在将事件动态绑定到ValCtrl中的方法。
wxSlider和wxCheckBox事件处理正在工作,但我对wxSpinCtrl做了一些错误的操作,我的处理程序没有被调用。该程序编译并运行,我在文档中没有找到足够的帮助。有什么想法吗?
以下是我的实例化:
linkCheckBox = new wxCheckBox(this, wxID_ANY, stim->name, wxPoint(-1,-1), wxSize(linkCheckBoxSX, defaultS));
slider = new wxSlider(this, wxID_ANY, 0, 0, 100, wxPoint(-1,-1), wxSize(sliderSX, sliderSY), wxSL_HORIZONTAL);
slider->SetRange(stim->minValue, stim->maxValue);
slider->SetValue(stim->value);
spinCtrl = new wxSpinCtrl(this, wxID_ANY, "0", wxPoint(-1,-1), wxSize(spinCtrlSX, spinCtrlSY));
spinCtrl->SetRange(stim->minValue, stim->maxValue);
spinCtrl->SetValue(stim->value);
以下是我的绑定:
slider->Bind(wxEVT_SCROLL_THUMBTRACK, &ValCtrl::OnScroll, this);
slider->Bind(wxEVT_SCROLL_CHANGED, &ValCtrl::OnScroll, this);
spinCtrl->Bind(wxEVT_SPIN, &ValCtrl::OnSpin, this);
spinCtrl->Bind(wxEVT_COMMAND_TEXT_ENTER, &ValCtrl::OnEntered, this);
linkCheckBox->Bind(wxEVT_COMMAND_CHECKBOX_CLICKED, &ValCtrl::OnCheck, this);
以下是我的处理程序方法声明:
void OnCheck(wxCommandEvent& event);
void OnEntered(wxCommandEvent& event);
void OnScroll(wxScrollEvent& event);
void OnSpin(wxSpinEvent& event);
仔细阅读标题,发现wxEVT_COMMAND_SPINCTRL_UPDATED。我使用的是2.9,这显然改变了自2.8以来wxSpinCtrl事件的调度和捕获方式。
正在工作。下面是任何其他好奇的一方的更正。
spinCtrl->Bind(wxEVT_SPIN, &ValCtrl::OnSpin, this);
spinCtrl->Bind(wxEVT_COMMAND_TEXT_ENTER, &ValCtrl::OnEntered, this);
转换为:
spinCtrl->Bind(wxEVT_COMMAND_SPINCTRL_UPDATED, &ValCtrl::OnSpin, this);
相关文章:
- Q维德格特关闭事件(..)未使用 QProcess::terminate() 调用
- 对使用 CMake 生成为 lib .a 的方法的未定义引用
- Win32设备事件:在DBT_DEVICEARIVAL事件上未接收到DBT_DEVTYP_VOLUME
- 为什么事件队列未处理我的QT信号
- QT5未注册触摸事件
- XCB_POLL_FOR_EVENT未检测到关闭窗口的XCB_CLIENT_MESSAGE事件
- WinEventHook未捕获特定进程id中的事件
- 事件记录API未写入系统日志
- 为什么在 linux 信号事件中未定义静态成员的使用
- Qt 事件过滤器未检测到对象名称
- 删除密钥未触发 KeyUp 和 KeyDown 事件
- 如何设置并发::事件对象,仅当它现在未处于信号状态时
- 事件未在带有wxwidgets的C++中引发
- 未捕获QT事件筛选器中的键盘快捷键(强制文本为大写)
- 未按预期找到事件
- 在eventFilter()中未捕获Qt鼠标移动事件
- 捕获鼠标但未聚焦窗口时捕获键盘事件(Win32)
- QKeyEvent 键按事件未检测到箭头键
- X11 MotionNotify 事件未显示在单独的共享库中?
- SDL2操纵杆事件未触发