• 歡迎訪問奇跡の海網站,本站不上傳任何資源,所有資源均來自于網絡,歡迎加入奇跡の海~!奇跡の海-WordPress QQ群
  • 本站下載資源為網絡上收集整理而來,并且以計算機技術研究交流為目的,版權歸原作者所有,僅供大家參考,學習,不存在任何商業目的與商業用途.
  • 本站系統鏡像均來自于官方原版,ed2k可視為P2P下載鏈接。所有操作系統默認均為試用版,如有正版密鑰可以有效激活,本站不提供任何激活和相關服務。

AutoIt3(au3)源碼-分離窗體演示

AutoIT3 奇跡の海 2年前 (2017-11-12) 777次瀏覽 已收錄 0個評論 掃描二維碼

代碼簡介

AutoIt3(au3)源碼-分離窗體演示
分離窗體演示,可以最大化

AU3源碼

#include <GUIConstants.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <ButtonConstants.au3>
#include <GUITreeView.au3>
#include <GuiListView.au3>


$hGui = GUICreate("分離窗體演示", 600, 400, -1, -1, BitOR($WS_SIZEBOX, $WS_MAXIMIZEBOX, $WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU))
$nTreeView = GUICtrlCreateTreeView(0, 4, 200, 372, -1, $WS_EX_CLIENTEDGE)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM + $GUI_DOCKWIDTH)
GUICtrlSetState(-1, $GUI_FOCUS)
$GeneralItem = GUICtrlCreateTreeViewItem("總體", $nTreeView)
$Item1 = GUICtrlCreateTreeViewItem("項目 1", $GeneralItem)
$Item2 = GUICtrlCreateTreeViewItem("項目 2", $GeneralItem)
$Item3 = GUICtrlCreateTreeViewItem("項目 3", $nTreeView)
GUICtrlSetState($GeneralItem, BitOR($GUI_EXPAND, $GUI_DEFBUTTON))
$nListView = GUICtrlCreateListView("名稱|大小|類型|修改時間", 204, 4, 394, 372)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM)
;設置控件的大小調整方式: 左邊             右邊              上方           底部 
GUICtrlSendMsg(-1, $LVM_SETEXTENDEDLISTVIEWSTYLE, $LVS_EX_GRIDLINES, $LVS_EX_GRIDLINES);向ListView 控件發送消息,使其有一行一行的效果
$nSplitter = GUICtrlCreateLabel("", 200, 29, 4, 372);這個就是中間那一條分割線
GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM + $GUI_DOCKWIDTH)
;設置控件的大小調整方式: 左邊             上方              底部           寬度不變 
GUICtrlSetCursor(-1, 13);設置Label控件的光標形狀為:SIZEWE (水平調整)
GUISetState()
$savex = 200;用來記錄Label控件的位置(也就是中間的分割線)
$pressed = 0;用來檢測有沒有按下Label控件


While 1
        $nMsg = GUIGetMsg()
        $arInfo = GUIGetCursorInfo()
        ;獲取(相對于 GUI 窗口的)鼠標位置,返回值如下


;~      $arInfo[0] = X 坐標 (水平軸) 


;~      $arInfo[1] = Y 坐標 (垂直軸) 


;~      $arInfo[2] = 鼠標左鍵被按下 (1 為按下, 0 為未按下) 


        If $pressed = 1 And $arInfo[2] = 0 Then $pressed = 0;當Label被按下之后放開鼠標則設置Label為未被按


        If $pressed = 1 And $arInfo[2] = 1 Then


                $arPos = WinGetPos($hGui);獲取窗口寬度,$arPos[2]


                If $arInfo[0] > 100 And $arInfo[0] < $arPos[2] - 100 Then;鼠標相對窗口X坐標 > 100 并且 鼠標相對窗口X坐標 < 窗口寬度-100


                        If $arInfo[0] <> $savex Then


                                ControlMove($hGui, "", $nSplitter, $arInfo[0] - 2, 29);將Label控件移動到鼠標的X位置-2


                                ControlMove($hGui, "", $nTreeView, 0, 4, $arInfo[0] - 2);將TreeView控件的寬度調整到鼠標的X位置-2


                                ControlMove($hGui, "", $nListView, $arInfo[0] + 2, 4, $arPos[2] - $arInfo[0] - 12) ;數值 12 需要耐心調整,要想獲得精確值,請參考 GetSystemMetrics API 函數。


                                $savex = $arInfo[0];記錄當前Label控件的位置


                        EndIf


                EndIf


        EndIf


        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        ExitLoop
                Case $nSplitter;當Label被按下時(也就是中間那一條空白的地方)
                        $pressed = 1
        EndSwitch
WEnd


版權聲明:本站所有文章和資源使用CC BY-NC-SA 4.0協議授權發布 , 轉載應當以相同方式注明文章來自“SeaOMC.COM->AutoIt3(au3)源碼-分離窗體演示!在下邊可以分享本文哦!
喜歡 (0)
[]
分享 (0)
奇跡の海
關于作者:
一個WordPress菜鳥!
發表我的評論
取消評論

表情 貼圖 加粗 刪除線 居中 斜體 簽到

Hi,您需要填寫昵稱和郵箱!

  • 昵稱 (必填)
  • 郵箱 (必填)
  • 網址
中国福利彩票36选7开奖结果