zsdsgjb 发表于 2012-6-12 08:06:16

难题求解:“程序框图单步执行”,即Lua的延时问题

本帖最后由 zsdsgjb 于 2012-6-12 08:08 编辑

酝酿一周,终于用Lua写出了单一类型程序框图运行的软件雏形(界面如下),代码近400行,程序开发中可谓是到了着魔的状态,6月10日(周日)在电脑前坐了十多个小时,就是为了程序的雏形。
   但在程序框图雏形的开发中,想进一步设计出单步执行,设想通过延时函数来处理,然而一个简单的延时处理问题折磨我好几天都无法求解,试着写了一个延时实验的程序(附后),在电脑上只是开始运行时延时,并不能做到循环中的单步延时,机器上运行更为缓慢,也不能单步延时。

附:不成功的“延时实验”的程序代码
platform.apilevel = '1.0'
run = 0
function on.paint(gc)
    gc:drawString("延时显示", 100,60)
    gc:drawRect(95,40,80,25)
    js = 0
    if run == 1 then
      gc:setColorRGB(255,0,0)
      gc:drawRect(95,40,80,25)
      while js < 8 do
            gc:drawString(js, 20,20*js)
            yanshi(10)
            js = js + 1
      end
    end
end
function yanshi(x)
    for i=1,x do
      for j=1,1000 do
             s = 1
      end
    end
end
function on.mouseDown(x,y)
    if x>95 and x<175 and y>40 and y<65 then
      run = 1
    else
      run = 0
    end
end

zzh 发表于 2012-6-13 21:18:08

j_0002.gif(woops)

zsdsgjb 发表于 2012-6-16 17:56:38

自己顶一顶问题。哈哈。
页: [1]
查看完整版本: 难题求解:“程序框图单步执行”,即Lua的延时问题