按键精灵的5级开发认证,笔试题参考
生活随笔
收集整理的這篇文章主要介紹了
按键精灵的5级开发认证,笔试题参考
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
4題是抄的,只是為了過級。最后得93分,可能代碼還是不夠最優,有看出的大大希望能不吝指點。
1、寫一個腳本,要求啟動時,記錄(錄制)當前鼠標的移動軌跡,記錄結束時,執行反相操作,注意操作速度不可偏差過大。
//就是循環記錄鼠標位置再移動的過程,代碼略2、請提供至少兩種判斷程序卡死(無響應)的思路,請寫出關鍵代碼.請寫出代碼 //1 顏色判斷,目標程序中經常變動的2個點顏色,如果在一定的時間內沒有變化,說明程序卡死/*---------------------------------------------------------------------------------------*/ MessageBox "以下是第一種判斷方式,顏色判斷" & vbcrlf & vbcrlf _ & "為了正常結束腳本,請不要在運行期間手動操作" & vbcrlf & vbcrlf _ & "點擊確定繼續。" /*---------------------------------------------------------------------------------------*/Dim err err = true counts=0'回到桌面 KeyDown "Win", 1 KeyPress "D", 1 KeyUp "Win", 1While errIfColor 450,200,"ffffff",1 Then counts = counts + 1 End IfIfColor 250,260,"ffffff",1 Then counts = counts + 1 End If'多次驗證防止誤判If counts > 5 Then err = FalseMessageBox Hwnd & " 檢測到已經卡死,點擊確定繼續。"End IfDelay 500Wend/*------------------------------------------------------------------------------------------------------*/ MessageBox "以下是第二種判斷方式,API檢測目標程序是否掛起" & vbcrlf & "點擊確定繼續。" /*------------------------------------------------------------------------------------------------------*///2 API看目標程序是否掛起Private Declare Function IsHungAppWindow Lib "user32.dll" (ByVal hwnd As Long) As LongDim HwndHwnd = Plugin.Window.MousePoint()If IsHungAppWindow(Hwnd) = 0 Then '0正常;1無響應MessageBox Hwnd & " 正常,點擊確定退出腳本。"Else MessageBox Hwnd & " 卡死(無響應),點擊確定退出腳本。"'相關處理代碼End IfEndScript
?3、寫一個腳本,在畫圖工具中畫圓半徑不小于100,而后在圈內畫正方形四角必須與圈重合。
提示:推薦使用Bkgnd命令來鍵鼠操作。(可選) //寫一個腳本,在畫圖工具中畫圓半徑不小于100,而后在圈內畫正方形四角必須與圈重合。 //提示:推薦使用Bkgnd命令來鍵鼠操作。(可選) Dim Hwnd, Hwnd2, Hwnd3 Dim x, y, x0, y0, l, n, r Dim v, i, j, kSetSimMode 1Call RunApp("mspaint.exe") Delay 1000 //查找子窗口句柄 Hwnd = Plugin.Window.Find("MSPaintApp", 0) Hwnd2 = Plugin.Window.FindEx(Hwnd,0,"AfxFrameOrView42u", 0) Hwnd3 = Plugin.Window.FindEx(Hwnd2,0,"Afx:1000000:8", 0)//-----------------------------------------畫圓 //設置圓心坐標 x0=110:y0=110 //設置點間距 l=5 //初始化角度 n=0 //設置第一圈半徑 r=100While n < 3.1415926 * 2 x=x0+r*cos(n)y = y0 - r * sin(n)Plugin.Bkgnd.Moveto Hwnd3, x, yPlugin.Bkgnd.LeftDown Hwnd3, x, yDelay 5// l/r:點距除以半徑,取得2點間相對圓心的角度n = n + l / rWendCall Plugin.Bkgnd.LeftUp(Hwnd3, x, y)//-----------------------------------------畫正方形 //根據圓心和邊長,計算正方形的4個角,根號2取1.41421356 l = 100 / 1.41421356 x = 110 - l '橫左 y = 110 - l '縱坐標上 x0 = 110 + l '橫右 y0 = 110 + l '縱坐標下'橫線上 For i = x to x0Plugin.Bkgnd.Moveto Hwnd3, i, yPlugin.Bkgnd.LeftDown Hwnd3, i, yi = i + 2 NextCall Plugin.Bkgnd.LeftUp(Hwnd3, i, y)//2013-8-16補充,因為是直線,直接給出開始坐標和結束坐標就好,不需要循環... ... 如下: Plugin.Bkgnd.Moveto Hwnd3, x, y Plugin.Bkgnd.LeftDown Hwnd3, x, y Plugin.Bkgnd.Moveto Hwnd3, x, y0 Plugin.Bkgnd.LeftUp(Hwnd3,x , y0)//省略部分,同上 EndScript
4、利用 ShowScrTXT 命令制作一個放大鏡,效果類似抓抓工具的放大鏡,可以放大顯示鼠標指向的5*5區域的顏色.請寫出代碼 Dim x, y, x1, x2, y1, y2, st_x, st_y Dim scr_x1, scr_y1, scr_x2, scr_y2MessageBox "【確定】后開始運行放大鏡,【F12】鍵退出。"While TrueCall FDJ()Delay 10 Wend//放大鏡函數 Function FDJ()//放大鏡的起點坐標st_x = 0st_y = 0//獲取鼠標的坐標GetCursorPos x, y//計算5*5區域范圍x1 = x - 2x2 = x + 2y1 = y - 2y2 = y + 2//獲取并輸出5*5區域內所有顏色For a = x1 To x2For b = y1 To y2RtColor = Plugin.Color.GetPixelColor(a, b, 1)//其中:4 - x2 + a = 5 - (x2 - a + 1),以下同理scr_x1 = st_x + (4 - x2 + a) * 6scr_y1 = st_y + (4 - y2 + b) * 6scr_x2 = scr_x1 + 6scr_y2 = scr_y1 + 6Call Plugin.Msg.ShowScrTXT(scr_x1, scr_y1, scr_x2, scr_y2, "█", RtColor)NextNext End Function
5、篩選出100以內所有個位數加十位數等于10的數,例如82,8+2=10滿足條件,請寫出代碼
//代碼略
總結
以上是生活随笔為你收集整理的按键精灵的5级开发认证,笔试题参考的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言小球消砖块的游戏,求大神帮忙看看这
- 下一篇: 0英文基础能学计算机编程么,我零基础,英