日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MFC:多窗口函数、变量调用

發布時間:2025/3/20 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MFC:多窗口函数、变量调用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

MFC:多窗口函數、變量調用

  • 新建子窗口
  • 窗口函數變量調用

新建子窗口

參考鏈接:

窗口函數變量調用

【說明】

MFC中的一個類A要想實現訪問另外一個類B的對象的成員變量,這個類A必須要獲得B類對象的指針:常用方法:維護一個單例樣式;設置靜態變量;ps: 被調用的函數、變量為public模式下

【實現方法】

  • step1:新建文件
    新建工程CMultipleCamera,基于對話框,
    主窗口對話框函數類名為:CMultipleCameraDlg
    子對話框為 :NGRcord(參考鏈接)

  • step2:構建靜態指針
    ①CMultipleCameraDlg.h 文件
    在CMultipleCameraDlg類定義函數中public下定義

  • static CMultipleCameraDlg *p_mainwindow;

    ②CMultipleCameraDlg.cpp 文件

    由于這個p_mainwindow指針式靜態的,我們需要在類外初始化,那么我們在CMultipleCameraDlg.cpp文件中,寫上一行初始化代碼,直接初始化為空,如下:

    //靜態指針初始化 CMultipleCameraDlg *CMultipleCameraDlg::p_mainwindow = NULL; // 注意要寫在類外,不要寫在類實現函數里面)。
  • step3:靜態指針賦值
    CMultipleCameraDlg類的構造函數或者 CMultipleCameraDlg.cpp文件中OnInitDialog()函數里面寫上如下一句代碼:
  • p_mainwindow = this; //pointer 賦值給主對話框指針 用于在其他對話框中調用主對話框的變量
  • step4 子對話框中 獲得靜態指針
    假設,在其他類中調用本類的函數時,需要在其實現cpp文件中聲明這個全局指針即可:
    以NGRcord類為例
    ①先在NGRcord.h中
    #include “MultipleCameraDlg.h”
    ②NGRcord.cpp中實現CMultipleCameraDlg類中public m_IniFilePath變量調用
  • CMultipleCameraDlg *p_childDlg = CMultipleCameraDlg::p_mainwindow;m_initpath = p_childDlg->m_IniFilePath;

    參考鏈接:
    鏈接1:
    鏈接2:

    總結

    以上是生活随笔為你收集整理的MFC:多窗口函数、变量调用的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。