15,979
社区成员
发帖
与我相关
我的任务
分享
BOOL OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct);
BEGIN_MESSAGE_MAP(CAAA, CDialog)
//{{AFX_MSG_MAP(CAAA)
// NOTE: the ClassWizard will add message map macros here
ON_WM_COPYDATA()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAAA message handlers
BOOL CAAA::OnCopyData(CWnd* pWnd, COPYDATASTRUCT* pCopyDataStruct)
{
//AfxMessageBox( "fdsafdsa" );
int *p;
p = ( int * )pCopyDataStruct->lpData;
int l, t, w, h;
l = *p;
t = *( p + 1 );
w = *( p + 2 );
h = *( p + 3 );
::SetWindowPos( this->GetSafeHwnd(), 0, l, t, w, h, 0 );
return TRUE;
}
void CTest2Dlg::OnButton1()
{
// TODO: Add your control notification handler code here
//CAAA a;
//a.DoModal();
CAAA *a = new CAAA();
a->Create( IDD_DIALOG1, NULL );
COPYDATASTRUCT b;
int c[ 20 ];
c[ 0 ] = 0; //新窗口左上角
c[ 1 ] = 0; //新窗口左上角
c[ 2 ] = 200; //新窗口宽
c[ 3 ] = 50; //新窗口高
b.dwData = 0;
b.cbData = sizeof( c );
b.lpData = c;
::SendMessage( a->GetSafeHwnd(), WM_COPYDATA, (WPARAM)(HWND)a->GetSafeHwnd(), (LPARAM)(PCOPYDATASTRUCT)&b );
a->ShowWindow( SW_SHOW );
}