易語(yǔ)言SDK窗口源碼
系統(tǒng)結(jié)構(gòu):WndProc,子程序_菜單初始化,HIWORD,LOWORD,子程序_處理命令消息,GetModuleHandle,LoadIcon,LoadCursor,GetStockObject,RegisterClass,MessageBox,CreateWindowEx,ShowWindow,UpdateWindow,GetMessage,TranslateMessage,DispatchMessage,DefWindowProc,PostQuitMessage,BeginPaint,GetClientRect,DrawText,EndPaint,MoveWindow,CreateMenu,AppendMenu,SetMenu,CreatePopupMenu,SendMessage,GetCursorPos,TrackPopupMenu,GetSubMenu,
======程序集_主程序
| |
| |------ _啟動(dòng)子程序
| |
| |------ WndProc
| |
| |------ 子程序_菜單初始化
| |
| |
======程序集_宏定義
| |
| |------ HIWORD
| |
| |------ LOWORD
| |
| |
======程序集_窗口過(guò)程處理
| |
| |------ 子程序_處理命令消息
| |
| |
======調(diào)用的Dll
| |
| |---[dll]------ GetModuleHandle
| |
| |---[dll]------ LoadIcon
| |
| |---[dll]------ LoadCursor
| |
| |---[dll]------ GetStockObject
| |
| |---[dll]------ RegisterClass
| |
| |---[dll]------ MessageBox
| |
| |---[dll]------ CreateWindowEx
| |
| |---[dll]------ ShowWindow
| |
| |---[dll]------ UpdateWindow
| |
| |---[dll]------ GetMessage
| |
| |---[dll]------ TranslateMessage
| |
| |---[dll]------ DispatchMessage
| |
| |---[dll]------ DefWindowProc
| |
| |---[dll]------ PostQuitMessage
| |
| |---[dll]------ BeginPaint
| |
| |---[dll]------ GetClientRect
| |
| |---[dll]------ DrawText
| |
| |---[dll]------ EndPaint
| |
| |---[dll]------ MoveWindow
| |
| |---[dll]------ CreateMenu
| |
| |---[dll]------ AppendMenu
| |
| |---[dll]------ SetMenu
| |
| |---[dll]------ CreatePopupMenu
| |
| |---[dll]------ SendMessage
| |
| |---[dll]------ GetCursorPos
| |
| |---[dll]------ TrackPopupMenu
| |
| |---[dll]------ GetSubMenu
調(diào)用的DLL命令:
.DLL命令 GetModuleHandle, 整數(shù)型, "kernel32", "GetModuleHandleA", , 獲取一個(gè)應(yīng)用程序或動(dòng)態(tài)鏈接庫(kù)的模塊句柄 如執(zhí)行成功成功,則返回模塊句柄。零表示失敗。會(huì)設(shè)置GetLastError
.參數(shù) lpModuleName, 文本型, , 指定模塊名,這通常是與模塊的文件名相同的一個(gè)名字。例如,NOTEPAD.EXE程序的模塊文件名就叫作NOTEPAD;
.DLL命令 LoadIcon, 整數(shù)型, "user32", "LoadIconA", , 從指定的模塊或應(yīng)用程序?qū)嵗休d入一個(gè)圖標(biāo)。其中,LoadIconBynum是LoadIcon函數(shù)的類型security聲明 執(zhí)行成功則返回已載入的圖標(biāo)的句柄;零表示失敗。會(huì)設(shè)置GetLastError
.參數(shù) hInstance, 整數(shù)型
.參數(shù) lpIconName, 整數(shù)型
.DLL命令 LoadCursor, 整數(shù)型, "user32", "LoadCursorA", , 從指定的模塊或應(yīng)用程序?qū)嵗休d入一個(gè)鼠標(biāo)指針。LoadCursorBynum是LoadCursor函數(shù)的類型security聲明 執(zhí)行成功則返回已載入的指針的句柄;零表示失敗。在Windows ; 95 和Win16環(huán)境中,這個(gè)函數(shù)只能載入標(biāo)準(zhǔn)尺寸的圖標(biāo)
.參數(shù) hInstance, 整數(shù)型, , 一個(gè)DLL的模塊句柄;或者一個(gè)實(shí)例句柄,指定包含了鼠標(biāo)指針的可執(zhí)行程序
.參數(shù) lpCursorName, 整數(shù)型, , 作為一個(gè)字串,指定欲載入的指針資源。作為一個(gè)長(zhǎng)整數(shù)值,指定欲載入的資源ID;或者設(shè)置一個(gè)常數(shù),代表某幅固有系統(tǒng)指針。如裝載的是一個(gè)固有系統(tǒng)指針,注意hInstance參數(shù)應(yīng)設(shè)為零。在api32.txt文件中以前綴IDC_ 作為標(biāo)志;
.DLL命令 GetStockObject, 整數(shù)型, "gdi32", "GetStockObject", , 取得一個(gè)固有對(duì)象(Stock)。這是可由任何應(yīng)用程序使用的windows標(biāo)準(zhǔn)對(duì)象之一 指向指定對(duì)象的一個(gè)句柄。零表示出錯(cuò)
.參數(shù) nIndex, 整數(shù)型, , 下述表格中定義的任何常數(shù)之一BLACK_BRUSH黑色刷子DKGRAY_BRUSH黑灰色刷子GRAY_BRUSH灰色刷子HOLLOW_BRUSH凹刷子LTGRAY_BRUSH淺灰色刷子NULL_BRUSH空刷子WHITE_BRUSH白色刷子BLACK_PEN黑色畫筆NULL_PEN空畫筆WHITE_PEN白色畫筆ANSI_FIXED_FONT采用windows(ANSI)字符集的等寬字體ANSI_VAR_FONT采用windows(ANSI)字符集的不等寬字體DEVICE_DEFAULT_FONT設(shè)備使用的默認(rèn)字體(NT)DEFAULT_GUI_FONT用戶界面的默認(rèn)字體,包括菜單和對(duì)話框字體(Windows 95)OEM_FIXED_FONTOEM字符集的固有字體SYSTEM_FONT屏幕系統(tǒng)字體。這是用于菜單、對(duì)話框等等的默認(rèn)不等寬字體SYSTEM_FIXED_FONT屏幕系統(tǒng)字體。這是用于菜單、對(duì)話框等等的默認(rèn)等寬字體(在windows 3.0之前使用)DEFAULT_PALETTE默認(rèn)調(diào)色板;
.DLL命令 RegisterClass, 整數(shù)型, "user32", "RegisterClassA", , 登記窗口類
.參數(shù) Class, WNDCLASS
.DLL命令 MessageBox, 整數(shù)型, "user32", "MessageBoxA", , 建立消息框窗體
.參數(shù) hwnd, 整數(shù)型
.參數(shù) lpText, 文本型
.參數(shù) lpCaption, 文本型
.參數(shù) wType, 整數(shù)型
.DLL命令 CreateWindowEx, 整數(shù)型, "user32", "CreateWindowExA", , 建立窗口
.參數(shù) dwExStyle, 整數(shù)型
.參數(shù) lpClassName, 文本型
.參數(shù) lpWindowName, 文本型
.參數(shù) dwStyle, 整數(shù)型
.參數(shù) x, 整數(shù)型
.參數(shù) y, 整數(shù)型
.參數(shù) nWidth, 整數(shù)型
.參數(shù) nHeight, 整數(shù)型
.參數(shù) hWndParent, 整數(shù)型
.參數(shù) hMenu, 整數(shù)型
.參數(shù) hInstance, 整數(shù)型
.參數(shù) lpParam, 整數(shù)型
.DLL命令 ShowWindow, 整數(shù)型, "user32", "ShowWindow", , 控制窗口的可見(jiàn)性(在vb里使用:針對(duì)vb窗體及控件,請(qǐng)使用對(duì)應(yīng)的vb屬性) 如窗口之前是可見(jiàn)的,則返回TRUE(非零),否則返回FALSE(零)
.參數(shù) hwnd, 整數(shù)型, , 窗口句柄,要向這個(gè)窗口應(yīng)用由nCmdShow指定的命令
.參數(shù) nCmdShow, 整數(shù)型, , 為窗口指定可視性方面的一個(gè)命令。請(qǐng)用下述任何一個(gè)常數(shù);SW_HIDE:隱藏窗口,活動(dòng)狀態(tài)給令一個(gè)窗口;SW_MINIMIZE:最小化窗口,活動(dòng)狀態(tài)給令一個(gè)窗口;SW_RESTORE:用原來(lái)的大小和位置顯示一個(gè)窗口,同時(shí)令其進(jìn)入活動(dòng)狀態(tài);SW_SHOW:用當(dāng)前的大小和位置顯示一個(gè)窗口,同時(shí)令其進(jìn)入活動(dòng)狀態(tài);SW_SHOWMAXIMIZED:最大化窗口,并將其激活;SW_SHOWMINIMIZED:最小化窗口,并將其激活;SW_SHOWMINNOACTIVE:最小化一個(gè)窗口,同時(shí)不改變活動(dòng)窗口;SW_SHOWNA:用當(dāng)前的大小和位置顯示一個(gè)窗口,不改變活動(dòng)窗口;SW_SHOWNOACTIVATE:用最近的大小和位置顯示一個(gè)窗口,同時(shí)不改變活動(dòng)窗口;SW_SHOWNORMAL:與SW_RESTORE相同;
.DLL命令 UpdateWindow, 整數(shù)型, "user32", "UpdateWindow", , 強(qiáng)制立即更新窗口,窗口中以前屏蔽的所有區(qū)域都會(huì)重畫(在vb里使用:如vb窗體或控件的任何部分需要更新,可考慮直接使用refresh方法 非零表示成功,零表示失敗
.參數(shù) hwnd, 整數(shù)型, , 欲更新窗口的句柄;
.DLL命令 GetMessage, 整數(shù)型, "user32", "GetMessageA", , 從線索消息隊(duì)列中返回一條消息
.參數(shù) lpMsg, MSG
.參數(shù) hwnd, 整數(shù)型
.參數(shù) wMsgFilterMin, 整數(shù)型
.參數(shù) wMsgFilterMax, 整數(shù)型
.DLL命令 TranslateMessage, 整數(shù)型, "user32", "TranslateMessage", , 轉(zhuǎn)換虛擬關(guān)鍵字消息
.參數(shù) lpMsg, MSG
.DLL命令 DispatchMessage, 整數(shù)型, "user32", "DispatchMessageA", , 向窗口發(fā)送消息
.參數(shù) lpMsg, MSG
.DLL命令 DefWindowProc, 整數(shù)型, "user32", "DefWindowProcA", , 調(diào)用缺省窗口過(guò)程
.參數(shù) hwnd, 整數(shù)型
.參數(shù) wMsg, 整數(shù)型
.參數(shù) wParam, 整數(shù)型
.參數(shù) lParam, 整數(shù)型
.DLL命令 PostQuitMessage, , "user32", "PostQuitMessage", , 通知WINDOWS線索將中斷
.參數(shù) nExitCode, 整數(shù)型
.DLL命令 BeginPaint, 整數(shù)型, "user32", "BeginPaint", , 準(zhǔn)備一個(gè)畫圖窗
.參數(shù) hwnd, 整數(shù)型
.參數(shù) lpPaint, PAINTSTRUCT
.DLL命令 GetClientRect, 整數(shù)型, "user32", "GetClientRect", , 返回指定窗口客戶區(qū)矩形的大小 非零表示成功,零表示失敗。會(huì)設(shè)置GetLastError
.參數(shù) hwnd, 整數(shù)型, , 欲計(jì)算大小的目標(biāo)窗口
.參數(shù) lpRect, RECT, , RECT,指定一個(gè)矩形,用客戶區(qū)域的大小載入(以像素為單位);
.DLL命令 DrawText, 整數(shù)型, "user32", "DrawTextA", , 將文本描繪到指定的矩形中 描繪文字的高度
.參數(shù) hdc, 整數(shù)型, , 欲在其中顯示文字的一個(gè)設(shè)備場(chǎng)景的句柄
.參數(shù) lpStr, 文本型, , 欲描繪的文本字串
.參數(shù) nCount, 整數(shù)型, , 欲描繪的字符數(shù)量。如果要描繪整個(gè)字串(直到空中止符),則可將這個(gè)參數(shù)設(shè)為-1
.參數(shù) lpRect, RECT, 傳址, RECT,指定用于繪圖的一個(gè)格式化矩形(采用邏輯坐標(biāo))
.參數(shù) wFormat, 整數(shù)型, , 一個(gè)標(biāo)志位數(shù)組,決定了以何種形式執(zhí)行繪圖。參考下面總結(jié)的常數(shù)類型列表標(biāo)志常數(shù)說(shuō)明DT_BOTTOM必須同時(shí)指定DT_SINGLE。指示文本對(duì)齊格式化矩形的底邊DT_CALCRECT象下面這樣計(jì)算格式化矩形:多行繪圖時(shí)矩形的底邊根據(jù)需要進(jìn)行延展,以便容下所有文字;單行繪圖時(shí),延展矩形的右側(cè)。不描繪文字。由lpRect參數(shù)指定的矩形會(huì)載入計(jì)算出來(lái)的值DT_CENTER文本垂直居中DT_EXPANDTABS描繪文字的時(shí)候,對(duì)制表站進(jìn)行擴(kuò)展。默認(rèn)的制表站間距是8個(gè)字符。但是,可用DT_TABSTOP標(biāo)志改變這項(xiàng)設(shè)定DT_EXTERNALLEADING計(jì)算文本行高度的時(shí)候,使用當(dāng)前字體的外部間距屬性(the external leading attribute)DT_LEFT文本左對(duì)齊DT_NOCLIP描繪文字時(shí)不剪切到指定的矩形DT_NOPREFIX通常,函數(shù)認(rèn)為 & 字符表示應(yīng)為下一個(gè)字符加上下劃線。該標(biāo)志禁止這種行為DT_RIGHT文本右對(duì)齊DT_SINGLELINE只畫單行DT_TABSTOP指定新的制表站間距,采用這個(gè)整數(shù)的高8位DT_TOP必須同時(shí)指定DT_SINGLE。指示文本對(duì)齊格式化矩形的頂部DT_VCENTER必須同時(shí)指定DT_SINGLE。指示文本對(duì)齊格式化矩形的中部DT_WORDBREAK進(jìn)行自動(dòng)換行。如用SetTextAlign函數(shù)設(shè)置了TA_UPDATECP標(biāo)志,這里的設(shè)置則無(wú)效;
.DLL命令 EndPaint, 整數(shù)型, "user32", "EndPaint", , 在指定窗口中標(biāo)記圖畫結(jié)尾標(biāo)志
.參數(shù) hwnd, 整數(shù)型
.參數(shù) lpPaint, PAINTSTRUCT
.DLL命令 MoveWindow, 整數(shù)型, "user32", "MoveWindow", , 改變指定窗口的位置和大小。頂級(jí)窗口可能受最大或最小尺寸的限制,那些尺寸優(yōu)先于這里設(shè)置的參數(shù) 非零表示成功,零表示失敗
.參數(shù) hwnd, 整數(shù)型, , 欲移動(dòng)窗口的句柄
.參數(shù) x, 整數(shù)型, , 窗口新的左側(cè)位置
.參數(shù) y, 整數(shù)型, , 窗口新的頂部位置
.參數(shù) nWidth, 整數(shù)型, , 窗口的新寬度
.參數(shù) nHeight, 整數(shù)型, , 窗口的高寬度
.參數(shù) bRepaint, 整數(shù)型, , 如窗口此時(shí)應(yīng)重畫,則設(shè)為TRUE(非零)。FALSE(零)則表明應(yīng)用程序會(huì)自己決定是否重畫窗口;
.DLL命令 CreateMenu, 整數(shù)型, "user32", "CreateMenu", , 創(chuàng)建新菜單 如成功則返回新的頂級(jí)菜單的句柄;零意味著錯(cuò)誤
.DLL命令 AppendMenu, 整數(shù)型, "user32", "AppendMenuA", , 在指定的菜單里添加一個(gè)菜單項(xiàng) 非零表示成功,零表示失敗。會(huì)設(shè)置GetLastError
.參數(shù) hMenu, 整數(shù)型, , 菜單句柄
.參數(shù) wFlags, 整數(shù)型, , 參考ModifyMenu函數(shù)中的菜單常數(shù)標(biāo)志定義表,其中列出了允許使用的所有常數(shù)
.參數(shù) wIDNewItem, 整數(shù)型, , 指定菜單條目的新命令I(lǐng)D。如果在wFlags參數(shù)中指定了MF_POPUP字段,那么這應(yīng)該是指向一個(gè)彈出式菜單的句柄
.參數(shù) lpNewItem, 文本型, , (相應(yīng)的vb聲明見(jiàn)注解),如果在wFlags參數(shù)中指定了MF_STRING標(biāo)志,這就代表在菜單中設(shè)置的字串。如設(shè)置了MF_BITMAP標(biāo)志,這就代表一個(gè)Long型變量,其中包含了一個(gè)位圖句柄。如設(shè)置了MF_OWNERDRAW,這個(gè)值就會(huì)包括在DRAWITEMSTRUCT和MEASUREITEMSTRUCT結(jié)構(gòu)中,在條目需要重畫的時(shí)候由windows發(fā)送出去;
.DLL命令 SetMenu, 整數(shù)型, "user32", "SetMenu", , 設(shè)置窗口菜單 非零表示成功,零表示失敗。會(huì)設(shè)置GetLastError
.參數(shù) hwnd, 整數(shù)型
.參數(shù) hMenu, 整數(shù)型
.DLL命令 CreatePopupMenu, 整數(shù)型, "user32", "CreatePopupMenu", , 創(chuàng)建一個(gè)空的彈出式菜單??捎肁ppendMenu或InsertMenu函數(shù)在窗口中添加條目,或者為一個(gè)現(xiàn)成的菜單添加彈出式菜單,并在新建的菜單中添加條目 如成功,返回一個(gè)菜單句柄;零意味著錯(cuò)誤
.DLL命令 SendMessage, 整數(shù)型, "user32", "SendMessageA", , 調(diào)用一個(gè)窗口的窗口函數(shù),將一條消息發(fā)給那個(gè)窗口。除非消息處理完畢,否則該函數(shù)不會(huì)返回。SendMessageBynum, ; SendMessageByString是該函數(shù)的“類型security”聲明形式 由具體的消息決定
.參數(shù) hwnd, 整數(shù)型, , 要接收消息的那個(gè)窗口的句柄
.參數(shù) wMsg, 整數(shù)型, , 消息的標(biāo)識(shí)符
.參數(shù) wParam, 整數(shù)型, , 具體取決于消息
.參數(shù) lParam, 整數(shù)型, , 具體取決于消息;
.DLL命令 GetCursorPos, 整數(shù)型, "user32", "GetCursorPos", , 獲取鼠標(biāo)指針的當(dāng)前位置 非零表示成功,零表示失敗。會(huì)設(shè)置GetLastError
.參數(shù) lpPoint, POINT, , POINTAPI,隨同指針在屏幕像素坐標(biāo)中的位置載入的一個(gè)結(jié)構(gòu);
.DLL命令 TrackPopupMenu, 整數(shù)型, "user32", "TrackPopupMenu", , 在屏幕的任意地方顯示一個(gè)彈出式菜單 非零表示成功,零表示失敗。會(huì)設(shè)置GetLastError
.參數(shù) hMenu, 整數(shù)型, , 彈出式菜單的句柄
.參數(shù) wFlags, 整數(shù)型, , 位置標(biāo)志和鼠標(biāo)追蹤標(biāo)志的組合,見(jiàn)下表;位置標(biāo)志:說(shuō)明;TPM_CENTERALIGN:菜單在指定位置水平居中;TPM_LEFTALIGN:菜單的左側(cè)置于水平x坐標(biāo)處;TPM_RIGHTALIGN:菜單的右側(cè)置于水平x坐標(biāo)處;TPM_LEFTBUTTON:鼠標(biāo)左鍵標(biāo)準(zhǔn)運(yùn)作方式;TPM_RIGHTBUTTON:用鼠標(biāo)右鍵進(jìn)行菜單追蹤
.參數(shù) x, 整數(shù)型, , 這個(gè)點(diǎn)指定了彈出式菜單在屏幕坐標(biāo)系統(tǒng)中的位置
.參數(shù) y, 整數(shù)型, , 同上
.參數(shù) nReserved, 整數(shù)型, , 未使用,設(shè)為零
.參數(shù) hwnd, 整數(shù)型, , 用于接收彈出式菜單命令的窗口的句柄。應(yīng)該使用窗體的窗口句柄——窗體中有一個(gè)菜單能象彈出式菜單那樣接收相同的命令I(lǐng)D集
.參數(shù) lprc, 整數(shù)型, , Rect,用屏幕坐標(biāo)定義的一個(gè)矩形,如用戶在這個(gè)矩形的范圍內(nèi)單擊,則彈出式菜單不會(huì)關(guān)閉。如單擊彈出式菜單之外的任何一個(gè)地方,則會(huì)關(guān)閉菜單??梢栽O(shè)為NULL;
.DLL命令 GetSubMenu, 整數(shù)型, "user32", "GetSubMenu", , 取得一個(gè)彈出式菜單的句柄,它位于菜單中指定的位置 位于指定位置的彈出式菜單的句柄(如果有的話);否則返回零
.參數(shù) hMenu, 整數(shù)型, , 菜單的句柄
.參數(shù) nPos, 整數(shù)型, , 條目在菜單中的位置。第一個(gè)條目的編號(hào)為0;
易語(yǔ)言VB2易V0009源碼,轉(zhuǎn)換VB函數(shù),刪除函數(shù)編輯框空行,刪除編輯框空行,轉(zhuǎn)換VB函數(shù)_2,轉(zhuǎn)換VB常數(shù),轉(zhuǎn)換VB自定義數(shù)據(jù)類型,轉(zhuǎn)換VB子程序,轉(zhuǎn)換VB全局變量,轉(zhuǎn)換VB局部變量,子程序1,轉(zhuǎn)換VB函數(shù)2...
易語(yǔ)言-正文提取源碼,正文提取,特殊字符過(guò)濾,取漢字個(gè)數(shù)_正則法,標(biāo)準(zhǔn)清除HTML標(biāo)簽,純凈清除HTML標(biāo)簽...
易語(yǔ)言SendInput源碼,SendInput,模擬鍵盤_,模擬鼠標(biāo)移動(dòng)_,模擬鼠標(biāo)單擊_,SendUnicode,SendAnsi,SendKeyS,取變量地址_字節(jié)集型_,指針到短整數(shù)_,字節(jié)集到短整數(shù)_,AnsiToUnicode,模擬鍵盤動(dòng)作_,模擬鼠標(biāo)動(dòng)作_,VkKeyScanW,GetKeyState,RtlInitAnsiString,RtlFreeU...
易語(yǔ)言SDK窗口源碼,SDK窗口,WndProc,子程序_菜單初始化,HIWORD,LOWORD,子程序_處理命令消息,GetModuleHandle,LoadIcon,LoadCursor,GetStockObject,RegisterClass,MessageBox,CreateWindowEx,ShowWindow,UpdateWindow,GetMessage,TranslateMessage,DispatchMes...
易語(yǔ)言API創(chuàng)建暫停進(jìn)程進(jìn)行DLL注入源碼,API創(chuàng)建暫停進(jìn)程進(jìn)行DLL注入,GetCmdLine,命令行緩沖區(qū)_,取文本內(nèi)容長(zhǎng)度_,CopyMemory,SN_CreateProcessA,SN_InjectDllA...
易語(yǔ)言api創(chuàng)建多層目錄源碼,api創(chuàng)建多層目錄,api_創(chuàng)建多層目錄...
易語(yǔ)言高斯算法源碼,高斯算法...
易語(yǔ)言高斯賽德爾迭代法演示源碼,高斯賽德爾迭代法演示,DBLX...
易語(yǔ)言雪花屏保源碼,雪花屏保,Rnd,InitP,GetContrast,GetDC,GetPixel,SetPixel,ReleaseDC,InvalidateRect...