NX二次開發-MFC對話框獲取UG界面句柄,設置MFC對話框在UG界面固定顯示位置


 1 extern "C" DllExport void  ufusr(char *param, int *retcod, int param_len)
 2 {
 3 
 4     if (UF_initialize())
 5     {
 6         /* Failed to initialize */
 7         return;
 8     }
 9     // The following method shows the dialog immediately
10     
11     AFX_MANAGE_STATE(AfxGetStaticModuleState());
12 
13     HWND UGHwnd = (HWND)UF_UI_get_default_parent();//獲取UG窗口句柄
14     CWnd *ugwindow = CWnd::FromHandle(UGHwnd);
15     
16     CRect rect;
17     ugwindow->GetWindowRect(&rect);//獲取UG矩形窗口的左上角坐標點和右下角坐標點
18 
19     CFirstMFCDialog *dlg = new CFirstMFCDialog(ugwindow);
20     if (dlg != NULL)
21     {
22         BOOL ret = dlg->Create(IDD_DIALOG1, ugwindow);//創建對話框
23         dlg->ShowWindow(SW_SHOW);//顯示對話框
24         dlg->SetWindowPos(ugwindow, rect.left, rect.bottom-265, 200, 200, SWP_NOSIZE);//設置對話框固定位置
25                                                                                      //rect.bottom-265為減去對話框的高度
26     }
27 
28     UF_terminate();
29 }
30 
31 Caesar盧尚宇
32 2019年7月15日

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM