visual c++ 窗口之间怎样传递数值?
visualc++怎样在窗口之间传递数字,比如A窗口的文本框姓名,点击确定后,显示在B窗口上.尽量用详细的实例...
visual c++ 怎样在窗口之间传递数字,比如A窗口的文本框姓名,点击确定后,显示在B窗口上.尽量用详细的实例
展开
1个回答
展开全部
方法很多,得看情况。不过,定义一个全局变量,取得A的文本存在其中,再在B中使用肯定能行。
追问
我不想做成全局变量,只是在一个工程中的特定的两个窗口之间,你用具体事例给我说一下,好吗?
就像C#中那样, 在A中 new一个窗口,
B b=new B();
b.text=a;
你能直接给我一段代码吗?
追答
发送消息吧,这段代码从CSDN上拷的,你看看
-.-#哦。我好人做到底吧。我作了一个简单程序。已经完全实现了。先做两个个修正:
1.不用虚声明ClassB。在ClassA的cpp文件里是可以include ClassB.h 的滴。
2.m_Parent 成员变成public属性
然后:
m_Parent 是在B中申明的 A怎么传递指针给他啊:
回答:
CClassA::OnButton1(){
:
if ( NULL == m_Child)
{
m_Child = new CClassB;
}
m_Child-> m_Parent = this;
m_Child-> DoModal();
:
}
m_Child-> GetInputString()获得B的全局变量,怎么个获得法啊?
回答:GetInputString()定义为ClassB的public函数,作用就是获得一个全部变量。
(1)ClassA.h
#define WM_MYMSG (WM_USER + 0x2000)
(2)ClassA.cpp
BEGIN_MESSAGE_MAP(CInterWideProjDlg, CDialog)
ON_MESSAGE(WM_MYMSG, OnMyMessage)
END_MESSAGE_MAP()
:
CClassA::OnMyMessage( WPARAM wParam, LPARAM lParam)
{
m_Child-> GetInputString();
}
(3)ClassB.cpp
CClassB::GetInputString()
{
return m_csString;
}
:
CClassB::OnButton1()
{ // 假定在B的BTN1按钮按下时让A获得csString的值
m_Parent-> SendMessage( WM_MYMSG, 0, 0);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询