在文本框中显示文本的内容

来源:互联网 发布:淘宝租手机 编辑:程序博客网 时间:2024/05/18 03:09

程序中的界面设计:

在文本框中动态的显示文本的内容。这样是分两种情况的,

一种情况:

需要在同一个进程中显示文本的内容,也就是,工程文件本身就是一个基于对话框的文件,要在这个对话框中的edit控件中显示文本的内容,那么我们可以

GetDlgItem(IDC_STATIC)->SetWindowText(str);  

或者使用类向导在对对应的控件添加变量为CString类然后将想要添加的内容字符串付给他,然后UpdateData(TRUE);就可以了。

另外一种情况:

需要在另外的进程中添加文本内容,也就是,需要在一个弹出的对话框中显示文本的内容,这种情况下,我们需要首先获得弹出对话框的句柄,然后取得这个对话框中的edit的句柄,这是使用GetDlgItem(ID_edit); 来实现的。然后向父窗口使用SendMessage()发送WM_SETTEXT消息,才可以实现:

具体的方法如下:

 CShowResult * showdlg=new CShowResult; //CShowResult 是要弹出的对话框类
 CWnd* cnd = new CWnd;
 showdlg->Create(IDD_DIALOG2,this);    //IDD_DIALOG2是弹出对话框的id
 showdlg->ShowWindow(SW_NORMAL);
 cnd = showdlg->GetDlgItem(IDC_SHOWRESULT); //IDC_SHOWRESULT是弹出对话框中要显示内容的文本框的id
 cnd->SendMessage(WM_SETTEXT,0,(LPARAM)result.GetBuffer(0)); //因为result是CString类,所以需要将其进行转化。
 
原创粉丝点击