等待信号/事件,GUI

时间:2015-04-20 15:02:47

标签: c++ qt signals wait

我正在开发一个Qt应用程序,它可以使用脚本执行多个操作。脚本中的一个命令需要发生外部事件,直到可以计算列表中的下一个命令(即 不是其他命令的情况。)

通常,我打开文件,读取一行脚本并进行处理。重复此过程,直到达到EOF。

当外部事件发生时可以发出信号,但是在这段时间内,通过脚本运行的函数会被停止。

如何在不锁定GUI响应的情况下归档此内容?

谢谢!

1 个答案:

答案 0 :(得分:1)

我会这样做:

public:
  void execute_script() {
    //open file
    continue_execution();
  }

public slots:
  void continue_execution() {
    while(!file.atEnd()) {
      //read and process command
      if(async_command) { 
        //make sure the signal indicating command completion
        //is connected to continue_execution() slot
        return; 
      }
    }
    emit script_finished();
  }
相关问题