我正在开发一个Qt应用程序,它可以使用脚本执行多个操作。脚本中的一个命令需要发生外部事件,直到可以计算列表中的下一个命令(即 不是其他命令的情况。)
通常,我打开文件,读取一行脚本并进行处理。重复此过程,直到达到EOF。
当外部事件发生时可以发出信号,但是在这段时间内,通过脚本运行的函数会被停止。
如何在不锁定GUI响应的情况下归档此内容?
谢谢!
答案 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();
}