由於畫板的繪圖效率比較低,壹些大圖片可能會出現卡的現象!
放入其它組件時註意下窗口的焦點,如焦點不在_啟動窗口,_啟動窗口_滾輪被滾動 事件會失效!
.版本 2.支持庫 eAPI
.程序集 窗口程序集1
.程序集變量 後臺, 畫板
.程序集變量 圖片號
.程序集變量 縮放值X, 小數型
.程序集變量 縮放值Y, 小數型
.程序集變量 x, 整數型
.程序集變量 y, 整數型
.程序集變量 可移動, 邏輯型
.子程序 __啟動窗口_創建完畢
邊框 = 0
復制窗口組件 (畫板1, 後臺)
畫板1.移動 (0, 0, 取用戶區寬度 (), 取用戶區高度 ())
後臺.移動 (0, 0, 取用戶區寬度 (), 取用戶區高度 ())
畫板1.自動重畫 = 真
後臺.自動重畫 = 真
通用對話框1.過濾器 = “圖像文件|*.jpg;*.bmp;*.gif;*.ico”
縮放值X = 1
縮放值Y = 1
.子程序 _畫板1_被雙擊, 邏輯型
.參數 橫向位置, 整數型
.參數 縱向位置, 整數型
.參數 功能鍵狀態, 整數型
.如果真 (通用對話框1.打開 ())
圖片號 = 載入圖片 (通用對話框1.文件名)
繪圖 ()
.如果真結束
.子程序 繪圖, 邏輯型
.局部變量 htkd
.局部變量 htgd
.如果真 (圖片號 = 0)
返回 (假)
.如果真結束
htkd = 縮放值X × 後臺.取圖片寬度 (圖片號)
htgd = 縮放值Y × 後臺.取圖片高度 (圖片號)
畫板1.移動 (0, 0, htkd, htgd)
後臺.移動 (0, 0, htkd, htgd)
後臺.畫圖片 (圖片號, 0, 0, htkd, htgd, )
後臺.復制 (, , , , 畫板1, 0, 0, )
移動 (, , htkd, htgd)
返回 (真)
.子程序 _畫板1_鼠標左鍵被按下, 邏輯型
.參數 橫向位置, 整數型
.參數 縱向位置, 整數型
.參數 功能鍵狀態, 整數型
' 發送信息 (161, 2, 0)
x = 橫向位置
y = 縱向位置
可移動 = 真
捕獲鼠標 (畫板1.取窗口句柄 ())
.子程序 _畫板1_鼠標左鍵被放開, 邏輯型
.參數 橫向位置, 整數型
.參數 縱向位置, 整數型
.參數 功能鍵狀態, 整數型
釋放鼠標 ()可移動 = 假
.子程序 _畫板1_鼠標位置被移動, 邏輯型
.參數 橫向位置, 整數型
.參數 縱向位置, 整數型
.參數 功能鍵狀態, 整數型
.如果真 (可移動)
左邊 = 取鼠標水平位置 () - x
頂邊 = 取鼠標垂直位置 () - y
.如果真結束
.子程序 __啟動窗口_滾輪被滾動, 邏輯型
.參數 滾動距離, 整數型
.參數 功能鍵狀態, 整數型
縮放值X = 縮放值X + 滾動距離 × 0.1
縮放值Y = 縮放值Y + 滾動距離 × 0.1
.如果真 (縮放值X < 0.1)
縮放值X = 0.1
.如果真結束
.如果真 (縮放值X > 5)
縮放值X = 5
.如果真結束
.如果真 (縮放值Y < 0.1)
縮放值Y = 0.1
.如果真結束
.如果真 (縮放值X > 5)
縮放值Y = 5
.如果真結束
繪圖 ()
輸出調試文本 (縮放值X)