VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 894|回复: 4

这样该怎么做啊??

[复制链接]

2

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-17 22:00:02 | 显示全部楼层 |阅读模式
若是 从A窗口中的editbox里输入一串数点击确定后在B窗口的editbox里显示出来。。。
  
  这样该怎么做啊? 我已包含头文件,声明各对象,但还是没整出来。help~~
回复

使用道具 举报

0

主题

55

帖子

32.00

积分

新手上路

Rank: 1

积分
32.00
发表于 2020-1-28 07:18:01 | 显示全部楼层
在A窗口中调用B窗口的指针,将A窗口的EditBox内容赋给B窗口的EditBox
回复

使用道具 举报

0

主题

8

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
发表于 2020-1-29 10:09:01 | 显示全部楼层
同意楼上的
回复

使用道具 举报

2

主题

19

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2020-1-30 13:27:01 | 显示全部楼层
也可发送消息
假若A窗口和B窗口都应是主窗口类下的一个成员

定义消息名:
#define 消息名(如UWM_SEND_AWND_TEXT)  (WM_APP + 0x100)

//主窗口类
Class 主窗口类(如CMainFrame或 CMyMainDlg等)
{
   CAwnd m_aWnd;
   CBwnd m_bWnd;
proteted:
   afx_msg LRESULT [得到消息函数名](WPARAM,LPARAM);
   
}

//BEGIN_MESSAGE_MAP(CTestDlg, CDialog)
        ON_MESSAGE(消息名,得到消息函数名)   
//END_MESSAGE_MAP()

//得到消息函数实体
LRESULT 主窗口类::得到消息函数名(WPARAM wParam,  LPARAM lParam)
{
         //这里只示例传来的是CString 类型对象,如果是CRect等任意类型对象要变为
         //CRect *pRect =(CRect)wParam;  CRect m_rect = *pRect; ......
        LPCTSTR * pText = (LPCTSTR *)wParam;
        CString getText=  *pText;   
         
         m_bWnd.设置值的函数(getText);  //实现将A窗体传来的字串wParam设置到B窗体

        return 0;
}



Class CAwnd
{

}

CAwnd::要传出的函数名(如点击按纽或编辑框的EN_CHANGE事件)
{
  UpdateData(TRUE);
  [要传出的变量类型]  myObj;  //如CString myObj;  CRect myObj等
  ::SendMessage(AfxGetApp()->GetMainWnd()->GetSafeHwnd(),消息名,(WPARAM)&myObj, 0);
}

class CBwnd
{

}
CBwnd::设置值的函数(CString getStr)
{
   m_edtStr1= getStr;
   UpdateDate(FALSE);
}
回复

使用道具 举报

2

主题

19

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2020-1-30 15:00:01 | 显示全部楼层
如果不是主窗口的成员变量
只需要将主窗口类中的消息响应函数移到CBwnd类中
在CAwnd类中发消息到CBwnd类对象的句柄即可
::SendMessage(m_Bwnd.GetSafeHwnd(),消息名,(WPARAM)&myObj, 0);
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表