原帖由 lijgame 于 2013-6-30 00:16 发表
posted by wap, platform: Chrome
什么os什么framework都没说。。。
如果是Windows下的话A创建B的时候保存句柄,然后变量值改变的时候把新的值以发消息的方式传递给B。
SendMessage是最简单的线程安全的消息机制了 ...
原帖由 seek 于 2013-6-30 00:41 发表
仅仅是要获得指针的话,楼主听说过全局变量么?
当然全局变量都是尽量避免使用的,最好有一个manager,在创建B的时候,把A的指针注册进去,在A销毁的时候,再通知B把指针赋空。上面两个操作都要对指针加锁。
原帖由 SONIC3D 于 2013-6-30 00:45 发表
你的设计思路不对,应该B获得A告诉它的A上的变量,甚至更好一点是应该数据和视图分离。
方案一:A告知B,B使用:
-B窗口为平台窗口类的派生类ClassWndB,构造函数接受一个参数,用来初始化ClassWndB的成员变量mV ...
原帖由 shixn 于 2013-6-30 00:54 发表
这个思路我也想过,所以就产生了追加问题。。
“在A窗口对应的类实现中的按钮事件方法中,以A窗口的变量x值去构造ClassWndB的一个实例”
这个具体如何实现啊。。。
按钮1 的函数是:
void CUIDlg::OnBut ...
原帖由 SONIC3D 于 2013-6-30 01:12 发表
我操,MFC什么的最让我感觉青春黑暗无比了。。。。
你这样用线程的话,我建议还是认认真真思考第二种方案。
如果一定要用第一种方案,那么AfxBeginThread是有第二个参数的,请自己看MSDN,但明确说这样用从结构角 ...
原帖由 shixn 于 2013-6-30 01:46 发表
AfxBeginThread函数有2种形式,工作者线程是有第二个参数的,UI多线程木有,所以比较伤脑筋……
CWinThread* AfxBeginThread(
AFX_THREADPROC pfnThreadProc,
LPVOID pParam,
int nPriority = THREAD ...
CWinThread::m_pMainWnd和
CWinThread::m_pActiveWnd
如果是要长期维护下去的,建议还是好好设计好否则就是给自己挖坑,早晚给埋了。
欢迎光临 TGFC Lifestyle (http://tgfcer.com/) | Powered by Discuz! 6.0.0 |