最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

VC實(shí)現(xiàn)對(duì)話框窗口任意分割

 更新時(shí)間:2015年06月30日 11:36:06   投稿:hebedich  
最近寫MFC的程序,想在對(duì)話框里實(shí)現(xiàn)窗口的任意分割?,F(xiàn)在網(wǎng)絡(luò)資料一大抄,找個(gè)東西實(shí)在麻煩??偹氵@個(gè)很簡單,很快就搞定了,寫下來做個(gè)筆記。

    個(gè)人認(rèn)為簡單問題最好就是直接貼源代碼,一看就明白,說來說去反而弄不清楚,那我就少廢話了,自己看吧,注釋很清楚。

先來張圖片

1. 新建一個(gè)MFC對(duì)話框程序MySplitterDlg。 再插入兩個(gè)Dialog資源 ,這里一定要選擇IDD_FORMVIEW類別的對(duì)話框,分別新建類CMyFormView0 和CMyFormView1,基類別選CDialog,一定要選擇CFormView。

2. CMySplitterDlg中增加WM_CREATE的消息響應(yīng),編輯OnCreate()

int CMySplitterDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
  if (CDialog::OnCreate(lpCreateStruct) == -1)
    return -1;
  // Because the CFRameWnd needs a window class, we will create a new one. I just copied the sample from MSDN Help.
  // When using it in your project, you may keep CS_VREDRAW and CS_HREDRAW and then throw the other three parameters.
  //需要注冊(cè)窗口類
  CString strMyClass = AfxRegisterWndClass(CS_VREDRAW | CS_HREDRAW, 
          ::LoadCursor(NULL, IDC_ARROW),  (HBRUSH) ::GetStockObject(WHITE_BRUSH),  
         ::LoadIcon(NULL, IDI_APPLICATION));
  // Create the frame window with "this" as the parent
  m_pMyFrame = new CFrameWnd;
  m_pMyFrame->Create(strMyClass,"", WS_CHILD,  CRect(0,0,300,300), this);
  m_pMyFrame->ShowWindow(SW_SHOW);
  // and finally, create the splitter with the frame as the parent
  m_cSplitter.CreateStatic(m_pMyFrame,1, 2); //在Frame里切分視圖窗口為1×2,就是一行兩列
  m_cSplitter.CreateView(0,0, RUNTIME_CLASS(CMyFormView0),  CSize(100,100), NULL);//第一行一列
  m_cSplitter.CreateView(0,1, RUNTIME_CLASS(CMyFormView1), CSize(100,100), NULL);//第一行二列
   return 0;
}

3. 在CMySplitterDlg::OnInitDialog()中顯示Frame

int CMySplitterDlg::OnInitDialog()
{
CDialog::OnInitDialog();

GetWindowRect(&cRect);
ScreenToClient(&cRect);
m_pMyFrame->MoveWindow(&cRect);
m_pMyFrame->ShowWindow(SW_SHOW);

return TRUE;
}

相關(guān)文章

  • C語言菜鳥基礎(chǔ)教程之Hello World

    C語言菜鳥基礎(chǔ)教程之Hello World

    C語言是一門通用計(jì)算機(jī)編程語言,應(yīng)用廣泛。C語言的設(shè)計(jì)目標(biāo)是提供一種能以簡易的方式編譯、處理低級(jí)存儲(chǔ)器、產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語言。
    2017-10-10
  • C語言中幾種常量的認(rèn)識(shí)和理解

    C語言中幾種常量的認(rèn)識(shí)和理解

    這篇文章主要為大家介紹了C語言常量的認(rèn)識(shí)和理解,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • C++實(shí)現(xiàn)惡搞電腦關(guān)機(jī)小程序的示例代碼

    C++實(shí)現(xiàn)惡搞電腦關(guān)機(jī)小程序的示例代碼

    這篇文章主要為大家詳細(xì)介紹了如何利用C++實(shí)現(xiàn)一個(gè)簡單的惡搞電腦關(guān)機(jī)小程序,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以嘗試一下
    2022-11-11
  • C語言圍圈報(bào)數(shù)題目代碼實(shí)現(xiàn)

    C語言圍圈報(bào)數(shù)題目代碼實(shí)現(xiàn)

    大家好,本篇文章主要講的是C語言圍圈報(bào)數(shù)題目代碼實(shí)現(xiàn),感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • 純C語言:檢索與周游廣度深度遍歷源碼分享

    純C語言:檢索與周游廣度深度遍歷源碼分享

    這篇文章主要介紹了檢索與周游廣度深度遍歷源碼,有需要的朋友可以參考一下
    2014-01-01
  • C++Stack棧類模版實(shí)例詳解

    C++Stack棧類模版實(shí)例詳解

    這篇文章主要為大家詳細(xì)介紹了C++Stack棧類模版實(shí)例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • C++模板二段名字查找方法

    C++模板二段名字查找方法

    下面小編就為大家?guī)硪黄狢++模板二段名字查找方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-01-01
  • c++11 chrono全面解析(最高可達(dá)納秒級(jí)別的精度)

    c++11 chrono全面解析(最高可達(dá)納秒級(jí)別的精度)

    chrono是c++ 11中的時(shí)間庫,本文就來詳細(xì)的介紹一下chrono庫的具體使用,關(guān)鍵是理解里面時(shí)間段(Durations)、時(shí)間點(diǎn)(Time points)的概念,感興趣的可以了解一下
    2021-11-11
  • C語言數(shù)據(jù)結(jié)構(gòu)堆的基本操作實(shí)現(xiàn)

    C語言數(shù)據(jù)結(jié)構(gòu)堆的基本操作實(shí)現(xiàn)

    這篇文章主要為大家介紹了C語言數(shù)據(jù)結(jié)構(gòu)堆的基本操作實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2021-11-11
  • C++詳細(xì)講解互斥量與lock_guard類模板及死鎖

    C++詳細(xì)講解互斥量與lock_guard類模板及死鎖

    線程的主要優(yōu)勢在于,能夠通過全局變量來共享信息。不過,這種便捷的共享是有代價(jià)的:必須確保多個(gè)線程不會(huì)同時(shí)修改同一變量,或者某一線程不會(huì)讀取正由其他線程修改的變量。為了防止出現(xiàn)線程某甲試圖訪 問一共享變量時(shí),線程某乙正在對(duì)其進(jìn)行修改。引入了互斥量
    2022-07-07

最新評(píng)論

栾城县| 河北省| 巫溪县| 黄龙县| 宁夏| 林州市| 衡南县| 池州市| 寿光市| 分宜县| 葫芦岛市| 潮安县| 禹城市| 海城市| 武隆县| 临清市| 昌都县| 中山市| 正定县| 含山县| 桂东县| 托克托县| 河池市| 墨竹工卡县| 饶河县| 沾益县| 普安县| 汉中市| 合江县| 唐河县| 成武县| 修水县| 瑞安市| 紫云| 任丘市| 义乌市| 石台县| 连云港市| 宾阳县| 大田县| 彭泽县|