MFC如何获得子窗口中控件的指针?
这个dlg就是弹出窗口的实例你只要在弹出窗口中定义列表框的指针比如是m_pList;那就直接dlg.m_pList->AddString就可以访问了dlg*pDlg=ne...
这个dlg就是弹出窗口的实例 你只要在弹出窗口中定义列表框的指针 比如是m_pList;
那就直接dlg.m_pList->AddString 就可以访问了
dlg *pDlg=new dlg;
pDlg->Create(IDD_DIALOG1,this);
pDlg->ShowWindow(SW_SHOW);
pDlg->m_List.AddString("hello");
pDlg->m_List.AddString("wangtk");
请问怎么设置成 模态的啊
CWindow1 *pDlg = new CWindow1;
pDlg->Create(IDD_DIALOG1,this);
pDlg->ShowWindow(SW_SHOW);
CProgressCtrl *m_progress = (CProgressCtrl*)pDlg->GetDlgItem(IDC_PROGRESS1);
m_progress->SetPos(10);
Sleep(100);
.....动态加载到100
m_progress->SetPos(100);
这是非模式窗口下进行的 赋值操作
我把pDlg->ShowWindow(SW_SHOW)改成pDlg->DoModal() 就不行了
请问怎么改呢 展开
那就直接dlg.m_pList->AddString 就可以访问了
dlg *pDlg=new dlg;
pDlg->Create(IDD_DIALOG1,this);
pDlg->ShowWindow(SW_SHOW);
pDlg->m_List.AddString("hello");
pDlg->m_List.AddString("wangtk");
请问怎么设置成 模态的啊
CWindow1 *pDlg = new CWindow1;
pDlg->Create(IDD_DIALOG1,this);
pDlg->ShowWindow(SW_SHOW);
CProgressCtrl *m_progress = (CProgressCtrl*)pDlg->GetDlgItem(IDC_PROGRESS1);
m_progress->SetPos(10);
Sleep(100);
.....动态加载到100
m_progress->SetPos(100);
这是非模式窗口下进行的 赋值操作
我把pDlg->ShowWindow(SW_SHOW)改成pDlg->DoModal() 就不行了
请问怎么改呢 展开
展开全部
不用指针的形式分配内存:
dlg pDlg;
pDlg.DoModal();这样创建的对话框就是非模态的
然后直接
pDlg.m_List.AddString("hello");
pDlg.m_List.AddString("wangtk");
dlg pDlg;
pDlg.DoModal();这样创建的对话框就是非模态的
然后直接
pDlg.m_List.AddString("hello");
pDlg.m_List.AddString("wangtk");
更多追问追答
追问
这样没法赋值的
比如子窗口中有一个进度条控件m_progress
pDlg.DoModal();
m_progress.SetPos(100);
这时进度条根本无法显示
追答
把pDlg->ShowWindow(SW_SHOW)改成pDlg->DoModal()要把
pDlg->Create(IDD_DIALOG1,this);去掉,你试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
pDlg->ShowWindow(SW_SHOW);//这样创建的就是非模态
pDlg->DoModal();//这样创建的,就是模态,注意模态窗口创建后,父窗口的代码要等待关闭后才执行。
pDlg->DoModal();//这样创建的,就是模态,注意模态窗口创建后,父窗口的代码要等待关闭后才执行。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
既然你是要在子窗口显示进度条,那天在资源中编辑对话框嘛,添加了进度条,然后为这个对话框创建一个类,在对话框类中的函数中处理你的进度条啊,在DoMoal之后自然会执行进度条的代码了,比如你可以再InitDIalog中初始化进度条为50%等等
希望解决了你的问题
希望解决了你的问题
更多追问追答
追问
写在子窗口的OnInitDialog() 中
造成一个问题, DoMoal()之后窗口并不会马上显示,而是等
子窗口OnInitDialog() 中的代码完全执行完之后才会显示..
这样造成 进度条控件不会动态显示进度,而是只能看到它加载到100%时的状态
追答
不知道你显示的什么的进度呢?我说
OnInitDialog中只是举个例子而已,因为我不知道你要显示什么的进度,你先说说
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以使用函数GetDlgItem函数。
更多追问追答
追问
怎么写? 给出代码好么
追答
假设你的子窗口的指针是pChildWnd,则获取子窗口控件指针的方法如下:
控件类* pCtrl=pChildWnd->GetDlgItem(控件ID).,pCtrl用于存放你要获取的控件的指针。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询