首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

MFC 類向導添加自定義變量類型:先選現有類型再修改聲明

     編輯:程式設計綜合問答

現象

在 MFC Class Wizard(類向導)的「成員變量」頁,下拉框「變量類型」沒有你想要的類型(如 CMyMeter)。

操作步驟

  1. 在向導中先選擇一個**最接近**的現有類型(如 CStatic、CWnd 或 int)。
  2. 點擊「確定」生成代碼後,打開對話框類的頭文件(.h)。
  3. 手動將生成的成員變量聲明類型改為目標類型:
    // 向導生成
    CStatic m_myMeter;
    // 手動修改為
    CMyMeter m_myMeter;
  4. 同步修改 DoDataExchange 中的 DDX_Control:
    DDX_Control(pDX, IDC_MY_METER, m_myMeter);
  5. 確保 CMyMeter 類已定義並包含頭文件。

原理

Class Wizard 的類型列表僅包含 MFC 內置控件類及項目中已識別的 CWnd 衍生類。自定義控件類若未被向導掃描到(如未註冊為 ActiveX、未在資源編輯器中使用),不會出現在下拉框。**手動修改聲明是標準做法**,向導生成的代碼只是樣板。

進階:讓自定義控件出現在向導

  1. 確保控件類繼承 CWnd 並實現 Create、PreSubclassWindow。
  2. 在資源編輯器對話框中放入一個「Custom Control」,屬性「Class」填寫你的類名(如 CMyMeter)。
  3. 重新打開 Class Wizard,變量類型下拉框會自動出現 CMyMeter。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved