同一个ID的对话框怎么标识?

jinling4388 2012-06-11 04:10:42
我自己从CDialog派生了一个对话框类,代码如下:
class CMyDlg : public CDialog
{
DECLARE_DYNAMIC(CMyDlg)

public:
CMyDlg(CWnd* pParent = NULL); // standard constructor
virtual ~CMyDlg();

// Dialog Data
enum { IDD = IDD_DLG_DISCARD };

protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
CString m_strImage;

public:
virtual BOOL OnInitDialog();
afx_msg void OnPaint();
void SetImage(CString strName);
};


调用的时候根据不同的参数,导入不同的图片,代码如下:
		CMyDlg *dlg;
switch(model) // model是int型
{
case 0:
dlg.SetImage(1.jpg);
break;
case 1:
dlg.SetImage(1.jpg);
break;
case 2:
dlg.SetImage(1.jpg);
break;
case 3:
dlg.SetImage(1.jpg);
break;
}
dlg->DoModal();


现在,窗口拖动时,发送的消息处理函数参数有窗口的HWND和CtrlID,我要怎么知道具体创建的是哪个窗口呢?

因为窗口弹出是顶层窗口,所以不能用SetDlgCtrlID函数设置不同的CtrlID。因为窗口没有标题栏,所以也不能用窗口标题来标识。

求大家告诉我一个标识的方法,多谢!
...全文
65 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinling4388 2012-06-18
  • 打赏
  • 举报
回复
我自己解决了,用WindowText来标识就可以了
周成风 2012-06-11
  • 打赏
  • 举报
回复
没明白楼主具体要干嘛。。。
ouyh12345 2012-06-11
  • 打赏
  • 举报
回复
楼主弹出了多个对话框?
在弹出的时候,可以获得对话框的句柄或CWnd指针的

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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