QQ群:256416207
作者:【机器猫】
欢迎进群讨论
//1、(前台)区域范围为(100,150)到(200,300)内的所有点是否均为"FFFFFF",是则弹出对话框"没有其他颜色",否则弹出第一个点的颜色值并退出程序. 请写出代码
x = 100
y = 150
RtColor = Plugin.Color.GetPixelColor(x, y, 0)
RtColor1 = RtColor
While (y < 300)
x=100
While (x < 200)
If RtColor = "FFFFFF" Then
x = x + 1
Else
MessageBox RtColor1
ExitScript
End If
RtColor = Plugin.Color.GetPixelColor(x, y, 0)
Wend
y=y+1
Wend
MessageBox "没有其他颜色"
//2、利用多线程对多个记事本的窗口位置进行随机移动.请写出代码
RunApp "notepad.exe" //启动3个记事本测试用
RunApp "notepad.exe"
RunApp "notepad.exe"
Delay 2000 //等待3个记事本工具打开
DimEnv Hwnd1
HwndEx = Plugin.Window.Search("记事本")
Hwnd = Split(HwndEx,"|")
If UBound(Hwnd) >= 0 Then //判断是否搜到句柄?
For i = 0 To UBound(Hwnd) - 1
wnd = Clng(Hwnd(i)) //类型转换
Hwnd1 = wnd
BeginThread 移动//启动线程
Delay 100 //启动线程需要点时间Next
End If
Do
Delay 1000
Loop
Sub 移动
Hwnd2 = Hwnd1
Randomize
x = Int(Rnd * 500)
Randomize
y = Int(Rnd*500) // MessageBox x&","&y
Call Plugin.Window.Move(Hwnd2, x+ 100, y + 100)
End Sub
//3、筛选出100以内所有个位数加十位数等于10的数,例如82,8+2=10满足条件,请写出代码
s=""
For i = 1 To 99
a = i mod 10
b = int(i / 10)
If (a + b) = 10 Then
s=s&i&"|"
End If
Next
MessageBox s
//4、写一个算法可以将十进制的字符串转成八进制的字符串.例如"8"->"10",请写出代码
Public Function DEC_to_OCT(Dec)
DEC_to_OCT = ""
Do While Dec > 0
DEC_to_OCT = Dec Mod 8 & DEC_to_OCT
Dec = Dec \ 8
Loop
End Function
a=DEC_to_OCT("8")
MessageBox a
//5、有N个窗口,第一个窗口移动到(0,0)点,其余的窗口根据第一个窗口平铺,窗口不超出屏幕边缘(窗口平铺),请写出代码
RunApp "notepad.exe"
RunApp "notepad.exe"
RunApp "notepad.exe"
RunApp "notepad.exe"
RunApp "notepad.exe"
RunApp "notepad.exe"
HwndEx = Plugin.Window.Search("记事本")
Hwnd = Split(HwndEx, "|")
ScreenX = Plugin.Sys.GetScRX()
ScreenY = Plugin.Sys.GetScRY()
MessageBox ScreenX
sRect = Plugin.Window.GetWindowRect(Hwnd(0))
MessageBox sRect
xy = Split(sRect, "|")
x = xy(2) - xy(0)
y = xy(3) - xy(1)
sx = 0
sy = 0
i=0
MessageBox x
While (Screeny-sy >y)
While (ScreenX - sx > x)
Delay 10
Call Plugin.Window.Move(Hwnd(i),Cstr(sx),Cstr(sy))
sx = sx + x
i = i + 1
If i > UBound(Hwnd)-1 Then
ExitScript
End If
Wend
sy = sy + y
sx=0
MessageBox sy
Wend。