目錄
前言
第1章 一個簡單的Windows應用程序
1.1 SIMPLE應用程序
1.1.1 源程序文件SIMPLE.C
1.1.2 模塊定義文件SIMPLE.DEF
1.2 編譯、鏈接與運行
1.3 對SIMPLE應用程序的剖析
1.3.1 “匈牙利”錶示法
1.3.2 句柄
1.3.3 係統頭文件WINDOWS.H
1.3.4 Pascal調用規則
1.3.5 WinMain()函數
1.3.6 窗口過程
1.3.7 模塊定義文件
1.4 消息驅動機製
1.4.1 消息的來源
1.4.2 排隊消息和非排隊消息
1.4.3 迴調函數
1.5 Windows應用程序的組成
第2章 菜單
2.1 一個簡單的菜單程序
2.1.1 頭文件MENUDEMO.H
2.1.2 源程序文件MENUDEMO.C
2.1.3 資源描述文件MENUDEMO.RC
2.1.4 模塊定義文件MENUDEMO.DEF
2.1.5 MENUDEMO的運行結果
2.2 定義、使用菜單
2.2.1 應用程序菜單的構成
2.2.2 定義菜單的語法規則
2.2.3 處理WMCOMMAND消息
2.3 一個復雜的菜單演示程序
2.3.1 頭文件COMPMENU.H
2.3.2 源程序文件COMPMENU.C
2.3.3 資源描述文件COMPMENU.RC
2.3.4 模塊定義文件COMPMENU.DEF
2.3.5 對COMPMENU的說明
2.4 使用係統菜單
2.4.1 源程序文件SYSMENU.C
2.4.2 模塊定義文件SYSMENU.DEF
2.4.3 修改係統菜單
2.5 帶有加速鍵的菜單
2.5.1 頭文件EDITER1.H
2.5.2 源程序文件EDITER1.C
2.5.3 資源描述文件EDITER1.RC
2.5.4 模塊定義文件EDITER1.DEF
2.5.5 定義加速鍵
2.5.6 在程序中使用加速鍵
2.6 在應用程序中定義菜單
2.6.1 頭文件READER1.H
2.6.2 源程序文件READER1.C
2.6.3 模塊定義文件READER1.DEF
2.6.4 MenuMake()函數
2.6.5 設置應用程序菜單
2.7 修改和增刪菜單項
2.7.1 頭文件MODIMENU.H
2.7.2 源程序文件MODIMENU.C
2.7.3 資源描述文件MODIMENU.RC
2.7.4 模塊定義文件MODIMENU.DEF
2.7.5 修改和增刪操作
第3章 鍵盤
3.1 Windows與鍵盤
3.2 鍵盤消息
3.2.1 擊鍵消息
3.2.2 擊鍵消息的lParam參數
3.2.3 擊鍵消息的wParam參數
3.2.4 字符消息
3.3 鍵盤消息演示程序
3.3.1 源程序文件KEYLOO K.C
3.3.2 模塊定義文件KEYLOOK.DEF
3.3.3 顯示擊鍵狀態
3.3.4 WM_SIZE 消息
3.3.5 KEYLOOK中用到的幾個API函數
3.4 一個簡單的文字處理程序
3.4.1 源程序文件SIMPLED.C
3.4.2 模塊定義文件SIMPLED.DEF
3.4.3 插字符
3.4.4 WM-SETFOC US和WM-KILLFOC US消息
3.4.5 屏蔽迴車鍵
3.4.6 補充說明
第4章 鼠標
4.1 鼠標與光標
4.2 鼠標消息
4.2.1 鼠標消息的lParam參數
4.2.2 鼠標擊中測試消息
4.2.3 非用戶鼠標消息
4.2.4 用戶區鼠標消息
4.3 一個鼠標消息的演示程序
4.3.1 源程序文件USEMOUSE.C
4.3.2 模塊定義文件USEMOUSE.DEF
4.3.3一點說明
4.4 鼠標消息的忽略
4.4.1 源程序文件CONNECT.C
4.4.2 模塊定義文件CONNECT.DEF
4.4.3 CONNECT程序的用法
4.4.4 SetPixel()函數
4.4.5 MoveTo()和LineTo()函數
4.5 浮動彈齣式菜單
4.5.1 頭文件POPMENU.H
4.5.2 源程序文件POPMENU.C
4.5.3 模塊定義文件POPMENU.DEF
4.5.4 對POPMENU的說明
4.6 捕捉鼠標消息
4.6.1 頭文件CAPTURE.H
4.6.2 源程序文件CAPTURE.C
4.6.3 資源描述文件CAPTURE.RC
4.6.4 模塊定義文件CAPTURE.DEF
4.6.5 捕捉鼠標消息
4.6.6 釋放鼠標控件權
第5章 子窗口
5.1 用戶定義子窗口
5.1.1 源程序文件CHILDWIN.C
5.1.2 模塊定義文件CHILDWIN.DEF
5.1.3 為子窗口注冊窗口類
5.1.4 創建子窗口
5.1.5 顯示子窗口
5.1.6 父窗口與子窗口之間的交互
5.2 子窗口控件
5.3 按鈕類
5.3.1 按鈕控件
5.3.2 下壓式按鈕
5.3.3 檢查框和三態按鈕
5.3.4 無綫電按鈕
5.3.5 組框
5.3.6 一個演示按鈕控件的程序
5.4 靜態類
5.4.1 靜態控件
5.4.2 使用靜態控件的演示程序
5.5 滾動條類
5.5.1 滾動條控件
5.5.2 滾動條控件的演示程序
5.6 編輯類
5.6.1 編輯控件
5.6.2 EDITER1應用程序的改進
5.7 列錶框類
5.7.1 列錶框
5.7.2 列錶框演示程序
5.8 組閤框類
5.8.1 組閤框
5.8.2 組閤框演示程序
第6章 對話框
6.1 彈齣式窗口
6.1.1 源程序文件POPUPWIN.C
6.1.2 模塊定義文件POPUPWIN.DEF
6.1.3 幾點說明
6.2 一個簡單的對話框
6.2.1 源程序文件DLGBOX.C
6.2.2 資源描述文件DLGBOX.RC
6.2.3 模塊定義文件DLGBOX.DEF
6.2.4 定義對話框
6.2.5 對話過程
6.2.6 創建、顯示對話框
6.3 利用對話框輸入數據
6.3.1 頭文件INPUTDAT.H
6.3.2 源程序文件INPUTDAT.C
6.3.3 資源描述文件INPUTDAT.RC
6.3.4 模塊定義文件INPUTDAT.DEF
6.3.5 INPUTDAT應用程序的對話過程
6.4 控件的分組
6.4.1 頭文件COLORSEL.H
6.4.2 源程序文件COLORSEL.C
6.4.3 資源描述文件COLORSEL.RC
6.4.4 模塊定義文件COLORSEL.DEF
6.4.5 控件的分組
6.4.6 COLORSEL的對話過程
6.4.7 使用畫筆
6.4.8 交互繪圖
6.5 一個復雜的對話框程序
6.5.1 頭文件EDITER3.H
6.5.2 頭文件DLGFUNCS.H
6.5.3 源程序文件EDITER3.C
6.5.4 源程序文件DLGFUNCS.C
6.5.5 資源描述文件EDITER3.RC
6.5.6 資源描述文件DLGFUNCS.DLG
6.5.7 模塊定義文件EDITER3.DEF
6.5.8 關於EDITER3.RC
6.5.9 EDITER3中用到的新函數和消息
6.5.1 0CanClose()函數的作用
6.6 無模式對話框
6.6.1 頭文件MLESSDLG.H
6.6.2 源程序文件MLESSDLG.C
6.6.3 資源描述文件MLESSDLG.RC
6.6.4 模塊定義文件MLESSDLG.DEF
6.6.5 ModalLess對話框
第7章 資源
7.1 圖標和光標
7.1.1 頭文件ICONDEMO.H
7.1.2 源程序文件ICONDEMO.C
7.1.3 資源描述文件ICONDEMO.RC
7.1.4 模塊定義文件ICONDEMO.DEF
7.1.5 定義圖標和光標
7.1.6 顯示圖標
7.1.7 使用光標
7.2 位圖
7.2.1 頭文件BMPDEMO.H
7.2.2 源程序文件BMPDEMO.C
7.2.3 資源描述文件BMPDEMO.RC
7.2.4 模塊定義文件BMPDEMO.DEF
7.2.5 裝人位圖
7.2.6 顯示位圖
7.3 字符串資源
7.3.1 頭文件STRDEMO.H
7.3.2 源程序文件STRDEMO.C
7.3.3 資源描述文件STRDEMO.RC
7.3.4 模塊定義文件STRDEMO.DEF
7.3.5 定義字符串資源
7.3.6 使用字符串資源
7.4 用戶自定義資源
7.4.1 頭文件READER.H
7.4.2 源程序文件READER.C
7.4.3 源程序READFUN0.C
7.4.4 資源描述文件READER.RC
7.4.5 用戶自定義資源文件READER.HLP
7.4.6 定義用戶資源
7.4.7 使用用戶資源
7.4.8 係統定義對話框
第8章 使用動態內存
8.1 Windows內存管理簡述
8.1.1 全局堆和局部堆
8.1.2 可移動的內存和可廢棄的內存
8.2 一個使用動態數組的例子
8.2.1 頭文件MEMUSE.H
8.2.2 源程序文件MEMUSE.C
8.2.3 資源描述文件MEMUSE.RC
8.2.4 模塊定義文件MEMUSE.DEF
8.2.5 使用動態內存
8.3 READER的最終版本
8.3.1 源程序文件READFUNS.C
8.3.2 使用局部內存
8.3.3 設置編輯控件緩衝區
第9章 計時器
9.1 計時器簡述
9.2 BMPDEMO的自動版
9.2.1 源程序文件TIMER1.C
9.2.2 資源描述文件TIMER1.RC
9.2.3 模塊定義文件TIMER1.DEF
9.2.4 窗口過程處理計時器事件
9.3 數字時鍾
9.3.1 源程序文件TIMEDEMO.C
9.3.2 模塊定義文件TIMEDEMO.DEF
9.3.3 數字時鍾窗口
9.3.4 計時器過程
第10章 圖形處理
10.1 基本圖形要素的生成
10.1.1 頭文件GRAFDEMO.H
10.1.2 源程序文件GRAFDEMO.C
10.1.3 資源描述文件GRAFDEMO.RC
10.1.4 模塊定義文件GRAFDEMO.DEF
10.1.5 基本圖形要素生成函數
10.1.6 正確使用GDI對象
10.2 特殊圖形的生成
10.2.1 頭文件SPECIAL.H
10.2.2 源程序文件SPECIAL.C
10.2.3 資源描述文件SPECIAL.RC
10.2.4 模塊定義文件SPECIAL.DEF
10.2.5 特殊圖形生成函數
10.2.6 係統預定義的選擇顔色對話框
10.3 填充圖案的式樣
10.3.1 頭文件FILLDEMO.H
10.3.2 源程序文件FILLDEMO.C
10.3.3 資源描述文件FILLDEMO.RC
10.3.4 模塊定義文件FILLDEMO.DEF
10.3.5 係統預定義的填充圖案
10.3.6 用戶自定義填充圖案
10.3.7 畫刷的重定位
10.3.8 填充圖案的顔色及其背景色
10.4 映射模式
10.4.1 頭文件MAPMODE.H
10.4.2 源程序文件MAPMODE.C
10.4.3 資源描述文件MAPMODE.RC
10.4.4 模塊定義文件MAPMODE.DEF
10.4.5 設備坐標和邏輯坐標
10.4.6 8種映射模式
10.4.7 視口和視窗
10.5 光柵操作
10.5.1 源程序文件ROP2LOOK.C
10.5.2 資源描述文件ROP2LOOK.RC
10.5.3 模塊定義文件ROP2LOOK.DEF
10.5.4 16種光柵操作模式
10.5.5 ROP2LOOK的輸齣效果
10.6 裁剪區域
10.6.1 源程序文件CLIPRGN.C
10.6.2 模塊定義文件CIIPRGN.DEF
10.6.3 創建和組閤區域
10.6.4 在區域中繪圖
第11章 位圖文件和圖元文件
11.1 位圖文件
11.2 使用位圖文件
11.2.1 頭文件BMPVIEW.H
11.2.2 源程序文件BMPVIEW.C
11.2.3 源程序文件GETFNAME.C
11.2.4 資源描述文件BMPVIEW.RC
11.2.5 模塊定義文件BMPVIEW.DEF
11.2.6 位圖信息結構體
11.3 圖元文件
11.3.1 頭文件METAFILE.H
11.3.2 源程序文件METAFILE.C
11.3.3 資源描述文件METAFILE.RC
11.3.4 模塊定義文件METAFILE.DEF
11.3.5 創建一個圖元文件
11.3.6 裝人一個圖元文件
11.3.7 顯示圖元文件
11.4 位圖文件與圖元文件的比較
11.5 動畫
11.5.1 頭文件ANIMATE.H
11.5.2 源程序文件ANIMATE.C
11.5.3 資源描述文件ANIMATE.RC
11.5.4 模塊定義文件ANIMATE.DEF
11.5.5 動畫圖案及動畫過程
第12章 字體
12.1 字體概述
12.2 觀察字體
12.2.1 頭文件FONTLOOK.H
12.2.2 源程序文件FONTLOOK.C
12.2.3 資源描述文件FONTLOOK.RC
12.2.4 模塊定義文件FONTLOOK.DEF
12.2.5 邏輯字體
12.2.6 選擇字體
12.3 文字的特殊顯示
12.3.1 頭文件FONTART.H
12.3.2 源程序文件FONTART.C
12.3.3 資源描述文件FONTART.RC
12.3.4 模塊定義文件FONTART.DEF
12.3.5 特殊顯示效果
第13章 使用打印機
13.1 一個簡單的打印機演示程序
13.1.1 頭文件PRNDEMO1.H
13.1.2 源程序文件PRNDEMO1.C
13.1.3 資源描述文件PRNDEMO1.RC
13.1.4 模塊定義文件PRNDEMO1.DEF
13.1.5 獲取打印機設備環境
13.1.6 打印一頁
13.2 較規範的打印機演示程序
13.2.1 頭文件PRNDEMO.H
13.2.2 源程序文件PRNDEMO.C
13.2.3 資源描述文件PRNDEMO.RC
13.2.4 模塊定義文件PRNDEMO.DEF
13.2.5 設置打印機
13.2.6 打印
13.3 EOITER應用程序打印功能的實現
13.3.1 頭文件EDITER.H
13.3.2 源程序文件EDITER.C
13.3.3 多頁打印
第14章 使用剪貼闆
14.1 利用剪貼闆傳送數據
14.1.1 嚮剪貼闆中寫數據
14.1.2 從剪貼闆中讀取數據
14.2 傳送文本數據
14.2.1 源程序文件TEXTCLIP.C
14.2.2 模塊定義文件TEXTCLIP.DEF
14.2.3 利用剪貼闆傳送文本
14.3 傳送圖元文件
14.3.1 源程序文件METACLIP.C
14.3.2 模塊定義文件METACLIP.DEF
14.3.3 嚮剪貼闆寫圖元文件
14.3.4 使用剪貼闆中的圖元文件
14.4 傳送位圖
14.4.1 頭文件BMPCLIP.H
14.4.2 源程序文件BMPCLIP.C
14.4.3 資源描述文件BMPCLIP.RC
14.4.4 模塊定義文件BMPCLIP.DEF
14.4.5 嚮剪貼闆傳送位圖數據
14.4.6 使用剪貼闆中的位圖
第15章 動態連接庫
15.1 動態連接庫模塊DRAWDLL
15.1.1 頭文件 DRAWDLL.H
15.1.2 源程序文件 DRAWDLL.C
15.1.3 模塊定義文件DRAWDLL.DEF
15.1.4 DLL的程序文件
15.2 動態鏈接庫的編譯和鏈接
15.3 使用動態鏈接庫
15.3.1 頭文件DLLDEMO.H
15.3.2 源程序文件DLLDEMO.C
15.3.3 資源描述文件DLLDEMO.RC
15.3.4 模塊定義文件DLLDEMO.DEF
15.3.5 輸入函數
15.4 動態鏈接庫的工作過程
第16章 多文檔界麵
16.1 MDI構成要素
16.2 MDI專用的結構、消息和函數
16.2.1 MDI專用結構體
16.2.2 MDI專用消息
16.2.3 MDI專用函數
16.3 MDI演示程序
16.3.1 頭文件MDIDEMO.H
16.3.2 源程序文件MDIDEMO.C
16.3.3 資源描述文件MDIDEMO.RC
16.3.4 模塊定義文件MDIDEMO.DEF
16.3.5 使用窗口附加信息
16.3.6 框架窗口及其窗口過程
16.3.7 撤消文件窗口
16.3.8 3個菜單
16.3.9 整理文件窗口
附錄1 本書介紹過的API函數
附錄2 本書介紹過的Wind0ws消息
附錄3 本書介紹過的Wind0ws結構體
附錄4 錶格
附錄5 程序索引
參考文獻
· · · · · · (
收起)