注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

chunwaihome 的博客

 
 
 

日志

 
 

Local,Static,Global  

2010-03-04 11:56:36|  分类: Powerpro腳本學習 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

為了使於記憶與理解,我們將常見的數據分為不同的類型

數值型數据


  1. 普通的十進制數值型數据:5、3.14、-20等
  2. 十六進制數据:以0x開頭,例如0x404、0xFF等

聲明數值型數据變量的一段型式:

Local t = 10

字符串型數据


字符串數据一般用""

 

 

 

 

 

 

 

 

 

 

 

而local和static的分別是static會保留它的值就算當你離開腳本後。

Static

static test

test="mystring"

quit

function sub   (function和@是相通的)

static test

win.debug(test)

 Local

 local test

test = "outer"

sub()

win.debug(test)

quit

function sub

local test

test="inner"

win.debug(test)

quit

 你可以分別用.script@function,結果將會執行

static test

win.debug(test)

的命令。

 Global

 而global宣佈的變數會保留它的值除非你關閉pp。而在默認的情況下,當你沒有表明類型的情況下,一般會被視為global。

e.g.

var = "test"

var會為視為global variable

 但這樣的寫法,有時在瀏覽腳本時會很混淆。

當你選取了圖中的方框時, var = "test"將會被視為不合法。

Local,Static,Global - Y偉 - chunwaihome 的博客

 

 而local和static的分別是static會保留它的值就算當你離開腳本後。

Static

static test

test="mystring"

quit

function sub   (function和@是相通的)

static test

win.debug(test)

 Local

 local test

test = "outer"

sub()

win.debug(test)

quit

function sub

local test

test="inner"

win.debug(test)

quit

 你可以分別用.script@function,結果將會執行

static test

win.debug(test)

的命令。

 Global

 而global宣佈的變數會保留它的值除非你關閉pp。而在默認的情況下,當你沒有表明類型的情況下,一般會被視為global。

e.g.

var = "test"

var會為視為global variable

 但這樣的寫法,有時在瀏覽腳本時會很混淆。

當你選取了圖中的方框時, var = "test"將會被視為不合法。

Local,Static,Global - Y偉 - chunwaihome 的博客

 

 Function 的好處

 我可以用function儲存很多相型的腳本,然後用arb去選擇性地執行它們。

好處是我可以將相同類型的腳本儲存在同一個腳本裏。

 conditional statements (條件式的陳述)

if / if()do ... else ... elseif ... endif

 1)如果你只有一1個命令應用在if裏,可以省略()do

e.g.

if (anywindow = "totalcmd")

message totalcmd is running under the back

 或者用pproconfig去設定

Local,Static,Global - Y偉 - chunwaihome 的博客

 如果你有多個命令應用在if裏,()do不可省略。

中間分割用else or elseif,但如果兩者同時出現的話,else一定要在elseif後面。

e.g.

if (ctrl or v>3) do

*Message ctrl is down or v is greater than 3

x=12

else

Message ctrl is not down or v is le 3

endif

 if(a eq 1) do

win.debug(" a is 1")

elseif (a eq 2)

win.debug(" a is 2")

elseif (a eq 3)

win.debug(" a is 3")

else

win.debug(" a gt 3")

endif

 for ... endfor and break/continue statements

Use the For statement to create a loop

 For的意思它會不停地執行for和endfor之間的命令。

直至符合預定的要求它才會停止。

e.g.

它會執行var = increxpr,然後去測試testxpr看是否符合它的要求。

for (var=initexpr; testexpr; var=increxpr)

... statements inside the loop ...

endfor

 相等於

 var=initexpr

@loop

if (not testexpr)

jump exitloop

... statements inside the loop ...

var = increxpr

jump loop

@exitloop

下面那個腳本我不太明白

 If you omit the test expression, then it is taken to be true and you will get a loop that can only be terminated by a break or quit

 e.g.

 for (var=initexpr; ;var=increxpr)

 For Each ..........EndFor

 e.g.

 filehand = file.open("c:/path/to/file.txt", "r")

if (filehand >=0) do

for each fileline in filehand? //for each line in the file

win.debug(fileline)            // shows each line of file

endfor 

filehand.close               // still must close file at end of loop

endif

 停止腳本

 你可以用quit去停止腳本

 JUMP xxx

相等於@xxx

 jump的意思是你可以在執行腳本時跳去在腳本的xxx位置。

 flags

我相信它的用途是測試某命令行有否執行

Command *Script

Action flag

Parameters set n1 n2

 You can test the flag with the if command;

Use: if (pproflag(4))

to check to see if flag number 4 is set;

Use: if (not pproflag(4))

  评论这张
 
阅读(783)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017