欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 402|回復: 1
收起左側

sfLib類庫的使用

[復制鏈接]
ID:155811 發表于 2025-10-19 14:13 | 顯示全部樓層 |閱讀模式
   
   sfLib類庫指南
   
    你是否厭煩了mfc 的過度封裝,想修改增加功能很繁瑣。可是直接用winapi   編程,只能使用c語言,而且要熟悉winapi 的底層函數,消息封裝等等。selfLib 類庫恰好解決了你的煩惱,sfLib 類庫直接簡單的用c++封裝了winapi 。
   用sfCracker.h文件提供windows消息的參數 轉換成c++數據的類型。
在sfWnd.h文件中,CWnd 類把全局的windows消息處理函數移到 你派生的 CWnd子類。
在窗口消息處理函數 sfWndMsgProc 中把消息處理 轉移到CWnd 類的 OnWndMsg函數,你需要在OnWndMsg函數中由自己決定,把哪些消息傳送給你的CWnd子類。傳送消息時,可以根據 sfCracker.h 中的宏定義,轉換函數參數。
  
sfWndMsgProc 窗口消息處理函數的工作過程如下:
在函數中,定義了一個映射表 CSimpleMap,函數正在處理的窗口句柄與CWnd 類指針的映射表。 還定義了 static CWnd* s_pCWndRcv 保存當前處理的 CWnd 類。

    使用CWnd 類的 Create 函數時,先把CWnd 的this 指針傳給 sfWndMsgProc 函數中的靜態變量s_pCWndRcv, 然后在接受到第一個窗口句柄(hWnd)不是null的消息時,以hWnd 為關鍵字 加入s_HWNDMap 映射表,在接收到后續的窗口消息都用該消息的窗口句柄(hWnd),在s_HWNDMap 映射表中查詢,得到 CWnd 類指針 pWnd,再調用 pWnd->OnWndMsg(),完成在 CWnd 子類中處理窗口消息。

   使用sfLib 類庫的CWnd 創建窗口,首先建立你的窗口類(如 CMainWnd),派生于 CWnd 類,添加你需要的變量、函數,比如在 Create 函數在定義自己窗口的類型,標題,樣式等等,然后在OnWndMsg 函數在接受窗口消息,并且分發到各自的處理函數。

     vs2008 (及以上版本 )中使用sfLib
  
一,創建一個 hello world 程序

1.啟動 vs2008,新建 clr 空項目
2,項目名 helloworld,保存在 d:\mydoc\vs28proj\hellwd 文件夾
3,復制 sfLib\sample\helloworld 文件夾的 mainWnd.h 和 main.cpp 兩個文件,
    粘貼到 項目文件夾 d:\mydoc\vs28proj\hellwd。
4.項目中添加文件,vs 菜單 項目-> 添加現有項,
   彈出的瀏覽窗口,選擇剛才粘貼的 mainWnd.h 和 main.cpp 兩個文件,點擊 添加。
5,項目 設置 附加包含目錄,點擊vs菜單 項目->屬性,在屬性頁 左邊 點擊 配置屬性,
   在右邊的 附加包含目錄 設置成 sfLib 所在的目錄,如 d:\sfLib
6, 生成 exe 文件,運行 則可出現一個 窗口,中央有 hello world! 文字。

  vs 中 查看mainWnd.h, 可以看到 從 sfLib 的CWnd 類,派生了 CMainWnd 類,類內
Create 方法,調用 create 可以 注冊創建一個窗口,標題 是 mainwnd,
  OnWndMsg 函數 接收 windows 消息,但是只 分發了 WM_PAINT  WM_CREATE 兩個消息,分別 由 OnPaint OnCreate 方法處理。你可以 添加分發windows 消息, 形式 CASE_MSG( WM_XXXX,函數名)
  mainWnd.h 中 OnCreate 方法 什么都沒做,直接返回 1,你可以在OnCreate 中創建窗口。
  在 OnPaint中 畫 hello world! 文字。
   
  查看main.cpp ,在 程序一啟動就執行的主函數 wWinMain ,定義了一個 CMainWnd 類的
實例,并調用 Create 方法,還用 windows 標準做法,接收分發 windows 消息。

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:155811 發表于 2025-10-19 14:15 | 顯示全部樓層
附件 sfLib 類庫

sflib.rar

191.46 KB, 下載次數: 0, 下載積分: 黑幣 -5

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表