WTL 关于在dialog 中添加另外一个dialog的问题!

tourgay 2011-05-14 12:03:17
hi:
  朋友们,一个问题一直困扰我好久,我想实现一个功能

在一个WTL dialog窗体中 让一个另外一个WTL dialog 窗体 显示在 第一个窗体中的 CStatic 中,

可是一直出错,也出不来我想要的效果。麻烦兄弟们查看一下。
我的子窗体代码


#pragma once
#include "resource.h"
#include <iostream>
using namespace std;
class ClsDlg_UITest : public CDialogImpl<ClsDlg_UITest>, public CUpdateUI<ClsDlg_UITest>,
public CWinDataExchange<ClsDlg_UITest>,
public CMessageFilter, public CControlWinTraits, public CIdleHandler
{
private:

protected:
public:
enum { IDD = IDD_Dlg_UITest };
virtual BOOL PreTranslateMessage(MSG* pMsg)
{
return IsDialogMessage(pMsg);
}

virtual BOOL OnIdle()
{
UIUpdateChildWindows();
return FALSE;
}

// Message map
BEGIN_MSG_MAP(ClsDlg_UITest)
MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
COMMAND_HANDLER(IDC_btn, BN_CLICKED, OnBnClickedbtn)
REFLECT_NOTIFICATIONS()
END_MSG_MAP()

BEGIN_UPDATE_UI_MAP(ClsDlg_UITest)
END_UPDATE_UI_MAP()
// Overrides
LRESULT OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled)
{
CenterWindow();
UIAddChildWindowContainer(m_hWnd);
// Hook up controls & variables
DoDataExchange(false);
return TRUE;
}
LRESULT OnBnClickedbtn(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/);
};


主窗体代码片段

HWND hWndPlaceHolder = GetDlgItem(IDC_STATIC2);
::ShowWindow(hWndPlaceHolder, TRUE);

ClsDlg_UITest *_uiTest =new ClsDlg_UITest;
_uiTest->Create(hWndPlaceHolder);//出错,添加不进去

...全文
215 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tourgay 2011-05-16
  • 打赏
  • 举报
回复
OK!我试一下楼上的方法。我是在WTL中做的,好像ATL也差不多。便跟MFC有一点差别!不知道是怎么回事儿
Waistcoat21 2011-05-15
  • 打赏
  • 举报
回复
你不能用statci当作父窗口。

你应该传入父对话框的窗口句柄,让后Create时传入statci的Rect范围内的值,记得ClsDlg_UITest的属性要设置为Child
tourgay 2011-05-14
  • 打赏
  • 举报
回复
我想CDialog在static上创建,要怎样做?
tourgay 2011-05-14
  • 打赏
  • 举报
回复
显示不出来窗体!
healer_kx 2011-05-14
  • 打赏
  • 举报
回复
什么错误啊?
目录 WTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version PrologueWTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version Prologue WTL for MFC Programmers, Chinese Version Prologue ................................ ........................... 6 WTL for MFC Programmers, Part I - ATL GUI Classes ................................ ........................... 8 README.TXTREADME.TXT README.TXTREADME.TXT README.TXTREADME.TXT ................................ ................................ ................................ ......................... 8 对本系列文章的总体介绍 对本系列文章的总体介绍 对本系列文章的总体介绍 ................................ ................................ ................................ ....... 9 对第一章的简单介绍 对第一章的简单介绍 ................................ ................................ ................................ ............. 11 ATL ATL ATL 背景知识 ................................ ................................ ................................ ....................... 11 ATL 和 WTL 的发展历史 ................................ ................................ ......................... 12 ATL-style 模板 ................................ ................................ ................................ ............. 12 ATL ATL ATL 窗口类 ................................ ................................ ................................ ........................... 15 定义一个窗口的实现 定义一个窗口的实现 ................................ ................................ ................................ ............. 17 填写消息映射链 ................................ ................................ ................................ ............. 19 高级消息映射链和嵌 高级消息映射链和嵌 入类 ................................ ................................ ................................ ..... 21 ATLATL 程序的结构 ................................ ................................ ................................ .................... 24 ATLATL 的对话框 ................................ ................................ ................................ .................... 27 WTL for MFC Programmers, Part II - WTL GUI Base Classes ................................ ............. 32 对第二部分的介绍 对第二部分的介绍 ................................ ................................ ................................ ................. 32 WTL WTL WTL WTL 总体印象 ................................ ................................ ................................ ...................... 32 开始写 WTLWTLWTL程序 ................................ ................................ ................................ .................. 33 WTL WTL WTL WTL 对消息映射的增强 ................................ ................................ ................................ ...... 36 从 WTLWTLWTL的应用程序生成向导能得到什么 的应用程序生成向导能得到什么 的应用程序生成向导能得到什么 ................................ ................................ .......... 42 使用向导的整个过程 ................................ ................................ ................................ ..... 42 查看生成的代码 ................................ ................................ ................................ ............. 44 CMessageLoop CMessageLoop CMessageLoop CMessageLoop CMessageLoop CMessageLoop CMessageLoop CMessageLoop 的内部实现 ................................ ................................ ................................ .. 47 CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl CFrameWindowImpl 的内部实现 ................................ ................................ ......................... 48 回到前面的时钟程序 回到前面的时钟程序 ................................ ................................ ................................ ............. 50 界面元素的自动更新 界面元素的自动更新 (UI Updating)(UI Updating)(UI Updating)(UI Updating) (UI Updating) (UI Updating)(UI Updating)(UI Updating)(UI Updating) (UI Updating) ................................ ................................ ...................... 51 添加控制时钟的新菜单项 ................................ ................................ ............................. 52 调用 UIEnable()................................ ................................ ................................ ............ 53 消息映射链最后需要注意的地方 消息映射链最后需要注意的地方 消息映射链最后需要注意的地方 消息映射链最后需要注意的地方 ................................ ................................

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧