欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

易語言隱藏窗口圖文教程

 更新時間:2018年12月10日 08:43:06   投稿:laozhang  
在本篇內(nèi)容中小編給大家分享了關(guān)于易語言如何隱藏窗口的方法內(nèi)實例代碼,需要的朋友們參考下。

本經(jīng)驗可以幫你的軟件添加像氣QQ一樣的伸縮窗口

新建一個Windows窗口程序

雙擊啟動窗口,輸入代碼:

.版本 2

.支持庫 spec


.程序集 窗口程序集1

.程序集變量 原窗口, 整數(shù)型

.程序集變量 停靠, 整數(shù)型, , , 1左,2上,3右,0為不

.程序集變量 正在收放, 整數(shù)型, , , 1收,2放

.程序集變量 計數(shù), 整數(shù)型

.程序集變量 已收起, 邏輯型

.程序集變量 時鐘, 整數(shù)型

.程序集變量 步進(jìn)長度, 整數(shù)型, , , 新加的

.程序集變量 最小尺寸, 整數(shù)型, , , 新加的


.子程序 __啟動窗口_創(chuàng)建完畢


' 本程序嚴(yán)格按照比賽要求,只限制左,上,右窗口移動和???且只和鼠標(biāo)在窗口停留或離開后1秒后才有動作-borisc

原窗口 = 設(shè)置窗口信息_ (取窗口句柄 (), #GWL_WNDPROC, 到整數(shù) (&處理))

讀回窗口位置 ()

步進(jìn)長度 = 15

最小尺寸 = 5


.子程序 讀回窗口位置, , , 移植_

.局部變量 配置文件名, 文本型


配置文件名 = 取運(yùn)行目錄 () + “\窗口位置.INI”

_啟動窗口.高度 = 到數(shù)值 (讀配置項 (配置文件名, “WINDOW”, “高度”, 到文本 (取屏幕高度 () ÷ 2)))

_啟動窗口.寬度 = 到數(shù)值 (讀配置項 (配置文件名, “WINDOW”, “寬度”, 到文本 (取屏幕寬度 () ÷ 4)))

_啟動窗口.左邊 = 到數(shù)值 (讀配置項 (配置文件名, “WINDOW”, “左邊”, 到文本 (取屏幕寬度 () ÷ 2)))

_啟動窗口.頂邊 = 到數(shù)值 (讀配置項 (配置文件名, “WINDOW”, “頂邊”, “0”))

.如果真 (_啟動窗口.左邊 > 取屏幕寬度 () - 30)

 _啟動窗口.左邊 = (取屏幕寬度 () - _啟動窗口.寬度) ÷ 2

.如果真結(jié)束

.如果真 (_啟動窗口.左邊 < 0)

 _啟動窗口.左邊 = 0

.如果真結(jié)束

.如果真 (_啟動窗口.頂邊 > 取屏幕高度 () - _啟動窗口.高度)

 _啟動窗口.頂邊 = 取屏幕高度 () - _啟動窗口.高度

.如果真結(jié)束

.如果真 (_啟動窗口.頂邊 < 0)

 _啟動窗口.頂邊 = 0

.如果真結(jié)束

調(diào)試輸出 (“_啟動窗口.”, _啟動窗口.左邊, _啟動窗口.頂邊, _啟動窗口.高度, _啟動窗口.寬度)



.子程序 將被銷毀保存位置, , , 移植_

.局部變量 配置文件名, 文本型


配置文件名 = 取運(yùn)行目錄 () + “\窗口位置.INI”

寫配置項 (配置文件名, “WINDOW”, “左邊”, 到文本 (_啟動窗口.左邊))

寫配置項 (配置文件名, “WINDOW”, “頂邊”, 到文本 (_啟動窗口.頂邊))

寫配置項 (配置文件名, “WINDOW”, “高度”, 到文本 (_啟動窗口.高度))

寫配置項 (配置文件名, “WINDOW”, “寬度”, 到文本 (_啟動窗口.寬度))



.子程序 處理, 整數(shù)型

.參數(shù) hwnd, 整數(shù)型

.參數(shù) Msg, 整數(shù)型

.參數(shù) wp, 整數(shù)型

.參數(shù) lp, 整數(shù)型


.判斷開始 (Msg = #WM_MOVING) ' 正在移動

 限制移動或大小 (lp, 0)

 .如果真 (???≠ 0) ' 移動禁止依靠

  ???= 0

  正在收放 = 0

 .如果真結(jié)束


.判斷 (Msg = #WM_GETMINMAXINFO) ' 正在獲得大小消息

 .如果真 (正在收放 = 0)

  限制移動或大小 (lp, 1)

 .如果真結(jié)束


.判斷 (Msg = #WM_SIZING) ' 正在改變大小

 .如果真 (???≠ 0) ' 大小禁止依靠

  停靠 = 0

  正在收放 = 0

 .如果真結(jié)束


.判斷 (Msg = #WM_SIZE) ' 大小已改變

 判斷???()


.判斷 (Msg = #WM_MOVE) ' 位置已移動

 .如果真 (正在收放 = 0) ' 無收放動作

  判斷???()

 .如果真結(jié)束


.判斷 (Msg = #WM_EXITSIZEMOVE)

 判斷停靠 ()


.判斷 (Msg = #WM_NCLBUTTONDOWN) ' 標(biāo)題欄鼠標(biāo)按下

 .如果真 (???≠ 0)

  .如果真 ((已收起 或 正在收放 ≠ 0) 且 wp ≠ 2) ' 禁止大小

   Msg = 0

  .如果真結(jié)束


 .如果真結(jié)束


.判斷 (Msg = #WM_SYSCOMMAND) ' 系統(tǒng)菜單

 .如果真 ((已收起 或 正在收放 ≠ 0) 且 wp = 61440) ' 收起了禁止調(diào)整大小

  Msg = 0

 .如果真結(jié)束


.默認(rèn)


.判斷結(jié)束

返回 (呼叫窗口函數(shù)地址_ (原窗口, hwnd, Msg, wp, lp))



.子程序 判斷???


.判斷開始 (頂邊 < 2)

 _啟動窗口.移動 (, 0, , ) ' 這里可寫吸附

 ???= 2 ' 上

 .如果真 (時鐘 = 0)

  時鐘 = 設(shè)置時鐘_ (取窗口句柄 (), 1036, 100, 到整數(shù) (&判斷收放))

 .如果真結(jié)束


.判斷 (左邊 < 2)

 ???= 1 ' 左

 _啟動窗口.移動 (0, , , )

 .如果真 (時鐘 = 0)

  時鐘 = 設(shè)置時鐘_ (取窗口句柄 (), 1036, 100, 到整數(shù) (&判斷收放))

 .如果真結(jié)束


.判斷 (左邊 > 取屏幕寬度 () - 寬度 - 2)

 ???= 3 ' 右

 _啟動窗口.移動 (取屏幕寬度 () - 寬度, , , )

 .如果真 (時鐘 = 0)

  時鐘 = 設(shè)置時鐘_ (取窗口句柄 (), 1036, 100, 到整數(shù) (&判斷收放))

 .如果真結(jié)束


.默認(rèn)

 停靠 = 0

 .如果真 (時鐘 ≠ 0)

  銷毀時鐘_ (取窗口句柄 (), 1036)

  時鐘 = 0

 .如果真結(jié)束


.判斷結(jié)束

.如果真 (已收起)

 判斷收起 ()

.如果真結(jié)束



.子程序 判斷收起


.判斷開始 (頂邊 = 5 - 高度 或 左邊 = 5 - 寬度 或 左邊 = 取屏幕寬度 () - 5)

 已收起 = 真

.默認(rèn)

 已收起 = 假

.判斷結(jié)束



.子程序 限制移動或大小, , , 0移動,非0大小

.參數(shù) lp, 整數(shù)型, 參考

.參數(shù) 移動或大小, 整數(shù)型

.局部變量 a, MINMAXINFO


' 分開子程序是不想鼠標(biāo)移動等等其它信息也分一個變量空間,個人猜想

.判斷開始 (移動或大小 = 0)

 復(fù)制內(nèi)存1_ (a, lp, 40) ' 40為MINMAXINFO結(jié)構(gòu)長度

 .如果真 (a.ptReserved.橫向位置 < 2) ' 靠邊像磁鐵一樣,為0就不吸啦

  a.ptReserved.橫向位置 = 0

  a.ptMaxSize.橫向位置 = 0 + 寬度

 .如果真結(jié)束

 .如果真 (a.ptReserved.縱向位置 < 2)

  a.ptReserved.縱向位置 = 0

  a.ptMaxSize.縱向位置 = 0 + 高度

 .如果真結(jié)束

 .如果真 (a.ptMaxSize.橫向位置 > 取屏幕寬度 () - 2)

  a.ptReserved.橫向位置 = 取屏幕寬度 () - 寬度

  a.ptMaxSize.橫向位置 = 取屏幕寬度 ()

 .如果真結(jié)束

 .如果真 (a.ptMaxSize.縱向位置 > 取屏幕高度 ()) ' 這里是限制窗口下邊不越出屏幕之外的代碼.

  a.ptReserved.縱向位置 = 取屏幕高度 () - 高度

  a.ptMaxSize.縱向位置 = 取屏幕高度 ()

 .如果真結(jié)束

 復(fù)制內(nèi)存_ (lp, a, 40) ' 40為MINMAXINFO結(jié)構(gòu)長度

.默認(rèn)

 復(fù)制內(nèi)存1_ (a, lp, 40) ' 40為MINMAXINFO結(jié)構(gòu)長度

 a.ptMinTrackSize.橫向位置 = 188 ' 最小X

 a.ptMinTrackSize.縱向位置 = 250 ' 最小Y

 ' ' a.ptMaxTrackSize.橫向位置 = 取屏幕寬度 () ' 最大X

 ' ' a.ptMaxTrackSize.縱向位置 = 取屏幕高度 () ' 最大Y

 復(fù)制內(nèi)存_ (lp, a, 40) ' 40為MINMAXINFO結(jié)構(gòu)長度

.判斷結(jié)束

' ZeroMemory (a, 40)



.子程序 判斷收放

.局部變量 x, 整數(shù)型

.局部變量 y, 整數(shù)型


x = 取鼠標(biāo)水平位置 ()

y = 取鼠標(biāo)垂直位置 ()

.判斷開始 (x < 左邊 或 x > 左邊 + 寬度 或 y < 頂邊 或 y > 頂邊 + 高度)

 .如果真 (正在收放 = 2) ' 正在展開時收起

  正在收放 = 0

  延時 (10)

  .如果真 (???≠ 0)

   窗口收起 ()

  .如果真結(jié)束


 .如果真結(jié)束

 .判斷開始 (已收起)

  計數(shù) = 0

 .默認(rèn)

  .判斷開始 (停靠 = 0)

   計數(shù) = 0

  .默認(rèn)

   計數(shù) = 計數(shù) + 1

  .判斷結(jié)束

  .如果真 (計數(shù) = 10) ' 1秒收起

   計數(shù) = 0

   .如果真 (正在收放 ≠ 1)

    窗口收起 ()

   .如果真結(jié)束


  .如果真結(jié)束


 .判斷結(jié)束


.默認(rèn)

 .判斷開始 (已收起)

  計數(shù) = 計數(shù) + 1

  .如果真 (計數(shù) = 10) ' 1秒展開

   計數(shù) = 0

   .如果真 (正在收放 ≠ 2 且 ???≠ 0)

    窗口展開 ()

   .如果真結(jié)束


  .如果真結(jié)束


 .默認(rèn)

  計數(shù) = 0

 .判斷結(jié)束

 .如果真 (正在收放 = 1) ' 正在收起時展開

  正在收放 = 0

  延時 (10)

  .如果真 (正在收放 ≠ 2 且 停靠 ≠ 0)

   窗口展開 ()

  .如果真結(jié)束


 .如果真結(jié)束


.判斷結(jié)束



.子程序 窗口收起

.局部變量 x, 整數(shù)型

.局部變量 y, 整數(shù)型


正在收放 = 1

.判斷開始 (???= 1) ' 左

 x = _啟動窗口.左邊

 .判斷循環(huán)首 (x > 7 - _啟動窗口.寬度)

  處理事件 ()

  .如果真 (正在收放 ≠ 1 或 停靠 = 0)

   返回 ()

  .如果真結(jié)束

  延時 (10)

  x = x - 步進(jìn)長度 ' 5

  _啟動窗口.移動 (x, , , )

 .判斷循環(huán)尾 ()

 _啟動窗口.移動 (最小尺寸 - _啟動窗口.寬度, , , ) ' 5


.判斷 (???= 3) ' 右

 x = 左邊

 y = 取屏幕寬度 ()

 .判斷循環(huán)首 (x < y - 7)

  處理事件 ()

  .如果真 (正在收放 ≠ 1 或 停靠 = 0)

   返回 ()

  .如果真結(jié)束

  延時 (10)

  x = x + 步進(jìn)長度 ' 5

  _啟動窗口.移動 (x, , , )

 .判斷循環(huán)尾 ()

 _啟動窗口.移動 (y - 最小尺寸, , , )


.判斷 (???= 2) ' 上

 x = 頂邊

 .判斷循環(huán)首 (x > 7 - 高度)

  處理事件 ()

  .如果真 (正在收放 ≠ 1 或 ???= 0)

   返回 ()

  .如果真結(jié)束

  延時 (10)

  x = x - 步進(jìn)長度 ' 5

  _啟動窗口.移動 (, x, , )

 .判斷循環(huán)尾 ()


 _啟動窗口.移動 (, 最小尺寸 - _啟動窗口.高度, , )


.默認(rèn)


.判斷結(jié)束

' 銷毀時鐘_ (取窗口句柄 (), 1036)

' 時鐘=0

已收起 = 真

正在收放 = 0


總在最前 = 真

調(diào)整層次 (#頂層)

調(diào)整層次 (#最高層)



.子程序 窗口展開

.局部變量 x, 整數(shù)型

.局部變量 y, 整數(shù)型


正在收放 = 2

已收起 = 假

_啟動窗口.總在最前 = 真

_啟動窗口.總在最前 = 假

.判斷開始 (???= 2) ' 上

 x = _啟動窗口.頂邊

 .判斷循環(huán)首 (x < -7)

  處理事件 ()

  .如果真 (正在收放 ≠ 2 或 ???= 0)

   返回 ()

  .如果真結(jié)束

  延時 (10)

  x = x + 步進(jìn)長度 ' 5

  _啟動窗口.移動 (, x, , )

 .判斷循環(huán)尾 ()

 _啟動窗口.移動 (, 0, , )


.判斷 (???= 1) ' 左

 x = 左邊

 .判斷循環(huán)首 (x < -7)

  處理事件 ()

  .如果真 (正在收放 ≠ 2 或 停靠 = 0)

   返回 ()

  .如果真結(jié)束

  延時 (10)

  x = x + 步進(jìn)長度 ' 5

  _啟動窗口.移動 (x, , , )

 .判斷循環(huán)尾 ()

 _啟動窗口.移動 (0, , , )


.判斷 (???= 3) ' 右

 x = 左邊

 y = 取屏幕寬度 ()

 .判斷循環(huán)首 (x > y - _啟動窗口.寬度 + 7)

  處理事件 ()

  .如果真 (正在收放 ≠ 2 或 ???= 0)

   返回 ()

  .如果真結(jié)束

  延時 (10)

  x = x - 步進(jìn)長度 ' 5

  _啟動窗口.移動 (x, , , )

 .判斷循環(huán)尾 ()

 _啟動窗口.移動 (y - _啟動窗口.寬度, , , )


.默認(rèn)


.判斷結(jié)束

正在收放 = 0

_啟動窗口.激活 ()


總在最前 = 真

調(diào)整層次 (#頂層)

調(diào)整層次 (#最高層)



.子程序 __啟動窗口_將被銷毀


設(shè)置窗口信息_ (取窗口句柄 (), #GWL_WNDPROC, 原窗口)

.如果真 (時鐘 ≠ 0)

 銷毀時鐘_ (取窗口句柄 (), 1036)

.如果真結(jié)束

.如果真 (正在收放 ≠ 0)

 正在收放 = 0

.如果真結(jié)束

將被銷毀保存位置 ()

 

復(fù)制DLL:

.版本 2


.DLL命令 設(shè)置窗口信息_, 整數(shù)型, "user32", "SetWindowLongA", , 在窗口結(jié)構(gòu)中為指定的窗口設(shè)置信息 指定數(shù)據(jù)的前一個值

 .參數(shù) 窗口句柄, 整數(shù)型, , hwnd,欲為其取得信息的窗口的句柄

 .參數(shù) 窗口信息值, 整數(shù)型, , nIndex,請參考GetWindowLong函數(shù)的nIndex參數(shù)的說明

 .參數(shù) 窗口信息新值, 整數(shù)型, , dwNewLong,由nIndex指定的窗口信息的新值


.DLL命令 呼叫窗口函數(shù)地址_, 整數(shù)型, "user32.dll", "CallWindowProcA", , CallWindowProcA將消息傳答窗口函數(shù) 

 .參數(shù) 前一窗口函數(shù)地址, 整數(shù)型, , lpPrevWndFunc

 .參數(shù) 窗口句柄, 整數(shù)型, , hwnd

 .參數(shù) 消息值, 整數(shù)型, , msg

 .參數(shù) 附加參數(shù)1, 整數(shù)型, , wParam

 .參數(shù) 附加參數(shù)2, 整數(shù)型, , lParam


.DLL命令 復(fù)制內(nèi)存_, , "kernel32.dll", "RtlMoveMemory", , CopyMemory

 .參數(shù) pDest, 整數(shù)型

 .參數(shù) pSrc, MINMAXINFO

 .參數(shù) ByteLen, 字節(jié)型


.DLL命令 復(fù)制內(nèi)存1_, , "kernel32.dll", "RtlMoveMemory", , CopyMemory1 

 .參數(shù) pDest, MINMAXINFO

 .參數(shù) pSrc, 整數(shù)型

 .參數(shù) ByteLen, 字節(jié)型


.DLL命令 設(shè)置時鐘_, 整數(shù)型, "user32.dll", "SetTimer", , SetTimer

 .參數(shù) 窗口句柄, 整數(shù)型, , hwnd

 .參數(shù) 事件標(biāo)識符, 整數(shù)型, , nIDEvent

 .參數(shù) 時鐘周期, 整數(shù)型, , uElapse

 .參數(shù) 回調(diào)函數(shù)地址, 整數(shù)型, , lpTimerFunc


.DLL命令 銷毀時鐘_, 整數(shù)型, "user32.dll", "KillTimer", , KillTimer

 .參數(shù) 窗口句柄, 整數(shù)型, , hwnd

 .參數(shù) 事件標(biāo)識符, 整數(shù)型, , nIDEvent


.DLL命令 內(nèi)存清零_, , "kernel32.dll", "RtlZeroMemory", , ZeroMemory將一塊內(nèi)存置零

 .參數(shù) 目的內(nèi)存, MINMAXINFO, 傳址, Destination

 .參數(shù) 長度, 整數(shù)型, , Length

 

復(fù)制自定義數(shù)據(jù):

.版本 2


.數(shù)據(jù)類型 坐標(biāo), , 坐標(biāo);POINTAPI

 .成員 橫向位置, 整數(shù)型, , , X坐標(biāo)

 .成員 縱向位置, 整數(shù)型, , , Y坐標(biāo)


.數(shù)據(jù)類型 MINMAXINFO, , MINMAXINFO

 .成員 ptReserved, 坐標(biāo)

 .成員 ptMaxSize, 坐標(biāo)

 .成員 ptMaxPosition, 坐標(biāo)

 .成員 ptMinTrackSize, 坐標(biāo)

 .成員 ptMaxTrackSize, 坐標(biāo)

 

復(fù)制常量數(shù)據(jù):

.版本 2


.常量 GWL_WNDPROC, "-4"

.常量 WM_GETMINMAXINFO, "36", , 此消息發(fā)送給窗口當(dāng)它將要改變大小或位置;

.常量 WM_MOUSEMOVE, "512"

.常量 WM_NCMOUSEMOVE, "160"

.常量 WM_EXITSIZEMOVE, "562"

.常量 WM_MOVING, "534"

.常量 WM_MOVE, "3"

.常量 WM_NCHITTEST, "132"

.常量 WM_NCLBUTTONDOWN, "161"

.常量 WM_NCLBUTTONUP, "162"

.常量 WM_SIZE, "5"

.常量 WM_SIZING, "532"

.常量 WM_SYSCOMMAND, "274"

.常量 WM_KEYUP, "257"

.常量 WM_KEYDOWN, "256"

狂擊F5調(diào)試程序。

以上就是關(guān)于易語言隱藏窗口的全部內(nèi)容,感謝大家對腳本之家的支持。

相關(guān)文章

  • 易語言取磁盤總空間、剩余空間方法

    易語言取磁盤總空間、剩余空間方法

    在本篇文章里小編給大家分享了關(guān)于易語言取磁盤總空間、剩余空間方法和技巧,對此有興趣的朋友們學(xué)習(xí)下。
    2019-01-01
  • 易語言軟件版本更新檢測工具源碼

    易語言軟件版本更新檢測工具源碼

    今天小編就為大家分享一篇關(guān)于易語言軟件版本更新檢測工具源碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • 易語言自定義外形按鈕實現(xiàn)過程

    易語言自定義外形按鈕實現(xiàn)過程

    在本篇內(nèi)容里小編給大家分享的是關(guān)于易語言自定義外形按鈕的制作方法,有興趣的朋友們可以學(xué)習(xí)下。
    2019-01-01
  • 易語言打開與關(guān)閉輸入法的代碼示例

    易語言打開與關(guān)閉輸入法的代碼示例

    今天小編就為大家分享一篇關(guān)于易語言打開與關(guān)閉輸入法的代碼示例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • 易語API監(jiān)視鼠標(biāo)狀態(tài)教學(xué)

    易語API監(jiān)視鼠標(biāo)狀態(tài)教學(xué)

    在本篇文章中小編給大家分享了關(guān)于易語言調(diào)用系統(tǒng)鉤子API監(jiān)視鼠標(biāo)狀態(tài)教學(xué),有興趣的朋友們學(xué)習(xí)下。
    2019-01-01
  • 易語言指定從起始選擇位置選中指定字符數(shù)量的方法

    易語言指定從起始選擇位置選中指定字符數(shù)量的方法

    今天小編就為大家分享一篇關(guān)于易語言指定從起始選擇位置選中指定字符數(shù)量的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-11-11
  • 易語言解析獲得無水印下載地址的代碼

    易語言解析獲得無水印下載地址的代碼

    今天小編就為大家分享一篇關(guān)于易語言解析獲得無水印下載地址的代碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-11-11
  • 易語言注入dll調(diào)用函數(shù)的方法

    易語言注入dll調(diào)用函數(shù)的方法

    在本文中小編給大家分享了關(guān)于易語言注入dll怎么調(diào)用函數(shù)的相關(guān)知識點內(nèi)容,對此有興趣的朋友們可以學(xué)習(xí)下。
    2019-01-01
  • 易語言實現(xiàn)QQ空間留言批量刪除的代碼

    易語言實現(xiàn)QQ空間留言批量刪除的代碼

    今天小編就為大家分享一篇關(guān)于易語言實現(xiàn)QQ空間留言批量刪除的代碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-11-11
  • 易語言更改編輯框內(nèi)文字字體的介紹

    易語言更改編輯框內(nèi)文字字體的介紹

    今天小編就為大家分享一篇關(guān)于易語言更改編輯框內(nèi)文字字體的介紹,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-11-11

最新評論