关于事件event的问题

blackpool 2007-08-22 11:33:09
定义如下函数
void CWxFrame::OnButtonStart(wxCommandEvent & WXUNUSED(event))
{
m_oStart.Run(oRunningList);
... ...
}

在GUI上点击Start按钮,程序开始工作,并输出结果.

现在想直接使用Run方法,不需要点击Start按钮,输出结果.

可是不点击Start,无法触发event,也就无法输出结果,但是程序实际上是运行了的,因为使用了Run. 怎样让这个事件总是处于触发的状态呢?
...全文
137 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Allen_zhang 2007-08-22
  • 打赏
  • 举报
回复
第一、可以直接调那个消息响应函数OnButtonStart(wxCommandEvent & WXUNUSED(event))
第二、发送消息::PostMessage( m_Hwnd, WM_COMMAND, MAKEWPARAM(IDC_BTN_START,0),0);
MulinB 2007-08-22
  • 打赏
  • 举报
回复
// user code sending the event

void MyWindow::SendEvent()
{
wxCommandEvent event( wxEVT_MY_EVENT, GetId() );
event.SetEventObject( this );
// Give it some contents
event.SetText( wxT("Hallo") );
// Send it
GetEventHandler()->ProcessEvent( event );
}

///////////////////////////////////////////////////////

reference: http://www.wxwidgets.org/manuals/stable/wx_eventhandlingoverview.html
blackpool 2007-08-22
  • 打赏
  • 举报
回复
就是说我的GUI中有一个"Start"按钮, 我想通过在程序中向对话框发消息的方法模拟用户点击这个按钮,请问应该怎么做?

类似于:
SendMessage(hwnd, WM_LBUTTONDOWN, Null, Null);
SendMessage(hwnd, WM_LBUTTONUP, Null, Null);

请问在wxWidgets框架下怎么实现?

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧