學習 Message(21):WM_SYSCOMMAND 讓關閉按鈕觸發最小化
需求 用戶點擊標題欄關閉按鈕(或 Alt+F4),窗口不關閉而是**最小化到任務欄**。 核心代碼 unit Unit1; interface uses W
學習 Message(22):WM_SYSCOMMAND 系統菜單綜合操作實戰
系統菜單操作全集 演示在運行時對系統菜單(標題欄圖標點擊彈出的菜單)進行:**添加、插入、修改、刪除、恢復**五大操作,並響應自定義項點擊。 核心 API
Windows 編程[1]:從零手寫第一個 Windows GUI 程序
完整可運行代碼 program Project1; uses Windows, Messages; { 繪製文本過程 } procedure OnPaint
Windows 編程[2]:CreateWindow 與 ShowWindow 參數全解析
最簡 Windows 程序 program Project1; uses Windows; begin MessageBox(0, Ok!, Title, 0)
Windows 編程[3]:窗口類結構詳解與回調函數規範
窗口創建框架回顧 program Project1; uses Windows; var hWnd: THandle; MyWndClass: TWndClas
Windows 編程[4]:消息機制與消息循環深度解析
系統消息架構 進程擁有一或多線程,系統維護**線程隊列** 每線程有一**消息隊列** 事件(點擊、鍵盤、定時器等)產生 → 系統投遞到對應線程消息隊列 線程
Windows 編程[5]:窗口創建流程核心代碼構建
最小可運行窗口程序 基於前面理論,構建包含:類定義、註冊、創建、顯示、消息循環的完整流程。 核心代碼 program Project1; uses Wind
Windows 編程[6]:標準 Windows 程序框架最終完整版
最佳實踐:完整的 Win32 GUI 程序模板 整合前面所有知識點:類註冊、錯誤檢查、CreateWindowEx、消息循環、Halt 退出碼。 完整代碼(含
Windows 編程[7]:WM_CREATE 窗口創建時的初始化時機
WM_CREATE 觸發時機 CreateWindow 內部創建窗口結構完成後、窗口顯示前,系統發送 WM_CREATE 消息。**此時窗口句柄已有效,適合做一
Windows 編程[8]:WM_PAINT 標準繪製流程詳解
WM_PAINT 觸發時機 窗口首次顯示(UpdateWindow) 被遮蓋區域重新暴露 調用 InvalidateRect/InvalidateRgn 標記
Windows 編程[9]:WM_CLOSE 消息攔截關閉確認
WM_CLOSE vs WM_DESTROY WM_CLOSE:用戶點擊關閉按鈕、Alt+F4、系統菜單「關閉」時發送,**可攔截取消** WM_DESTRO
Windows 編程[10]:鼠標左鍵按下/抬起/移動消息完整處理
三大鼠標客戶區消息 WM_LBUTTONDOWN:左鍵按下 WM_LBUTTONUP:左鍵抬起 WM_MOUSEMOVE:鼠標移動 座標均在 lParam
Windows 編程[11]:WM_SIZE 消息獲取窗口尺寸變化
WM_SIZE 觸發時機 窗口大小發生變化(用戶拖動邊框、最大化/最小化、調用 SetWindowPos 等)時,Windows 發送 WM_SIZE 消息。
Windows 編程[12]:從零構建菜單資源並掛載到窗口
為什麼要用資源文件定義菜單? VCL 的 TMainMenu 固然方便,但直接操作資源文件(*.rc → *.res)能獲得完全控制權,且是 Windows 原
Windows 編程[13]:MENUEX 菜單資源進階語法與常量定義
從 MENU 到 MENUEX 的演進 MENUEX 支援更多參數與功能,語法採用 BEGIN/END 或 {...} 塊,註釋用 C 風格 //。 資源標識
Windows 編程[14]:MENUEX 進階參數詳解與組合用法
MENUEX 四大參數 MENUITEM 文本, ID, 格式(MFT_*), 樣式(MFS_*) 參數間用 |(C 風格位或)組合多標誌,不可用 Delphi
Windows 編程[15]:WM_COMMAND 消息處理菜單點擊事件
WM_COMMAND 核心機制 用戶點擊任意菜單項,Windows 發送 WM_COMMAND 消息給窗口,wParam 低字節即為資源文件中指定的菜單命令 I
Windows 編程[16]:動態添加/刪除菜單項完整實戰
核心 API 組合 GetMenu(hWnd):獲取主菜單句柄 AppendMenu(hMenu, flags, ID, text):追加項目 DeleteM
NoDrives 位元遮罩計算與雙鍵值同步實作