C FLTK 1.3.2:最新的屏幕,处理事件和非障碍睡眠
C++ FLTK 1.3.2: up-to-date screen, handling events and non-blocking sleep
我正在编写基于FLTK的GUI应用程序-RAM机器。
我希望我的方法在每个执行订单后1秒钟睡觉,保持屏幕的最新和可访问,不要同时阻止事件处理等。问题在于我使用睡眠时间的每个功能随机时间。
例如:
void FlowControl::_runProgram (void) {
//Inside a loop:
_step(); //execute next order
clock_t start = timer.start(); //initialize clock
do{
//wait max. 1-passed_time() [seconds] until 'something happens'
Fl::wait(1-timer.passed_time());
}while ( timer.passed_time() < 1 ); // check if 1 second has passed
//...
}
结果:GUI不阻止,一切都可以,但是我必须等待0到6(!!)秒,而不是仅仅一秒钟。
我已经尝试过的东西:fl :: wait()/fl :: check()/fl :: ready() sleep()/settimer()/clock_t/time_t带有或不带有多线程。
如何解决此问题?
fltk doc:http://www.fltk.org/doc-1.3/index.html
我能想到的最简单方法是使用Fl::add_timeout()
和Fl::repeat_timeout()
函数。检查一个示例Greg Ercolano如何在这个小型演示中进行:http://seriss.com/people/erco/fltk/#animatedrawing
相关文章:
- 从文本文件中读取时钟时间和事件时间并进行处理
- 处理闪烁窗口事件
- 给定顺序中的事件处理
- C++事件系统 - 多态事件和事件处理程序
- 是否可以在QT GUI应用程序中处理事件时播放加载动画指示器?
- 如果窗口服务被杀,如何处理事件
- GRPC C 称为PloteimionQueue关闭,但PostemionQueue.Next在有待处理事件时永远阻
- WNDPROC处理事件更少的代码
- C FLTK 1.3.2:最新的屏幕,处理事件和非障碍睡眠
- 在运行线程中处理事件
- 如何在Windows C++中处理事件
- 使用 EVT_NAVIGATION_KEY 处理事件不起作用
- C++ 从另一个程序集创建 WPF 窗口的父级并处理事件
- 在QT OpenGL中处理事件
- 如何在QThread上处理事件
- 移动精灵和处理事件
- 用于后续计算机视觉处理的屏幕截图
- 如何处理事件消息,同时使用chrome嵌入式框架(CEF)
- 处理事件从wxTextCtrl在wxFrame - c++ /wxWidgets
- Qt如何处理事件发出的无限循环?