vc的MFC中关于setwindowtext的一个简单问题!

在MFC中,我在一个线程中改变dlg里面的CEdit编辑框的内容,应该怎么操作啊???我在dlg外面不知道怎么获取这个dlg里面的CEdit···请大哥帮帮我啊··这个问... 在MFC中,我在一个线程中改变dlg里面的CEdit编辑框的内容,应该怎么操作啊???我在dlg外面不知道怎么获取这个dlg里面的CEdit···
请大哥帮帮我啊··这个问题困扰我很久都没有解决···跪地感谢了··
不是这个意思,不知道怎么在线程中(dlg外面)改变dlg里面的CEdit编辑框的内容····我应该怎么操作啊???我在dlg外面不知道怎么获取这个dlg里面的CEdit···
可以用句柄的方法?怎样获得编辑框控件的句柄?怎样修改呢?
可以用指针的方法?怎样获得编辑框控件的指针,怎样修改呢内容?
展开
 我来答
测绘地理信息
2008-11-08 · TA获得超过2204个赞
知道小有建树答主
回答量:516
采纳率:100%
帮助的人:473万
展开全部
要这样你必须创建一个非模态对话框,而不是模态对话框。这个过程比较麻烦,还要考虑一些细节。下面的步骤可供你参考,写得不全面(假设你的工程名为Test,对话框的ID为IDD_DIALOG1,其类名为CMyDlg,编辑框的ID为IDC_EDIT1):
1、在TestView.h的开头包含MyDlg.h,然后为其添加一个CMyDlg*类型的变量pModallessDlg,在CTestView的构造函数中将其初始化:pModallessDlg = NULL;
2、在需要弹出对话框的地方添加如下代码:
if (!pModallessDlg)
{
pModallessDlg = new CMyDlg;
pModallessDlg->Create(IDD_DIALOG1);
pModallessDlg->GetDlgItem(IDC_EDIT1)->SetWindowText("编辑框的内容");
pModallessDlg->ShowWindow(SW_SHOW);
}
else
pModallessDlg->SetActiveWindow();
这个仅仅是测试一下改变编辑框文本这个功能,没有处理对话框的消息,要处理对话框的消息必需重载它的OnOK、OnCancel等函数,并向视图类发送消息。在视图类中处理这些消息时要记得消毁对话框并delete pModallessDlg。
何处淬吴钩
2008-10-30 · TA获得超过5044个赞
知道大有可为答主
回答量:2947
采纳率:50%
帮助的人:2407万
展开全部
首先请确认你在你的对话框类里面为edit添加的变量是公有成员变量(假设为m_edit)。然后通过对话框对象直接对成员进行引用就可以了。如你的对话框对象为dlg,那么用dlg.m_edit.SetWindowText()就可以了。或者你把对话框进一步封装了,在对话框中增加设置编辑框文本的公有函数,这样m_edit也可以定义成非共有的成员变量。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shevacjs
2008-11-01
知道答主
回答量:17
采纳率:0%
帮助的人:0
展开全部
用spy++ 获取要找cedit 的窗口类名和窗口名 然后调用 FindWindow 获取该窗口的指针 接下来就可以进行相对应的操作
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Mark_zhenhua
2008-10-31 · 超过18用户采纳过TA的回答
知道答主
回答量:66
采纳率:0%
帮助的人:0
展开全部
对于这个CEdit有一个ID,假设为IDC_XXXX,用GetDlgItem(IDC_XXXX)就可以获得这个CEdit。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友881a6a941
2008-10-31 · TA获得超过5793个赞
知道小有建树答主
回答量:1100
采纳率:0%
帮助的人:1003万
展开全部
线程操作窗体之需要获得相应的句柄就OK了,比如线程 CreateThread 是可以传递一个参数的,你可以将 this 这个指针传递进来,然后 ((CDialog*)lpParameter)-> 就可以获得到相应的资源,或者用标准的API函数也可以。

线程操作资源(这里资源只广义资源不是RES)需要注意一个同步问题,就是多个线程可能同时在修改这个资源就会出现冲突,所以必须要使用临界区等方法同步一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式