1、 對於乙個視窗如何進行操作呢,首先要得到其使用控制代碼,我們可以用findwindow()函式來獲取當前視窗控制代碼,具體使用如下:
hwnd hfig = ::findwindow(null,hwnd);
如果得到找到,則返回視窗的控制代碼,否則返回null。 當然我們可以使用 setwindowpos(hwnd hwnd, hwnd hwndisertafter, int x, int y, int cx, int cy , uint uflags) 改變視窗的大小和位置,uflags是標誌視窗的顯示屬性,具體值可以是swp_nomove 、swp_nozorder 、swp_noactivate 、swp_framechanged等。 具體的呼叫例項如下:
hwnd hfig = ::findwindow(null,"fig no. 1"); //找到視窗,並返回視窗控制代碼
if(hfig == null) // 獲取繪圖區域的位置和大小
rect plotrec;
cwnd *plotarea = getdlgitem(idc_plotarea); // 獲取繪圖區域指標
plotarea->getwindowrect(&plotrec); // 將繪圖區域矩形賦給 定義矩形
long width = plotrec.right - plotrec.left; long height = plotrec.bottom - plotrec.top; // 獲得繪圖區域的寬和高
// 設定figure視窗為繪圖區域視窗的子視窗並調整其位置
::setparent(hfig,plotarea->getsafehwnd()); // 設定繪圖區域視窗為 figure視窗的父視窗
::setwindowpos(hfig,null,1,1,width,height,swp_nozorder | swp_noactivate); // 設定繪圖視窗的大小和位置
// 設定視窗可見
setvisible(h_a,mwarray("on"));
// 進入視窗等待狀態
bwait = 1; mlfhgwaitforfigurestodie();
2、當然你想改變視窗屬性的話,還可以增加以下函式來改變視窗的屬性
long lstyle. = ::getwindowlong(hfig,gwl_style);
::setwindowlong(hfig,gwl_style,lstyle. & (~ws_caption) & (~ws_thickframe));
::setwindowpos(hfig,null,0,0,0,0,swp_nomove | swp_nozorder | swp_noactivate | swp_framechanged);
就寫到這吧,其他的學會了再統一以乙個例項的形式給出。
如何獲得視窗控制代碼(HWND )和改變視窗屬性
1 對於乙個視窗如何進行操作呢,首先要得到其使用控制代碼,我們可以用findwindow 函式來獲取當前視窗控制代碼,具體使用如下 hwnd hfig findwindow null,hwnd 如果得到找到,則返回視窗的控制代碼,否則返回null。當然我們可以使用 setwindowpos hwnd...
如何獲得視窗控制代碼(HWND )和改變視窗屬性
1 對於乙個視窗如何進行操作呢,首先要得到其使用控制代碼,我們可以用findwindow 函式來獲取當前視窗控制代碼,具體使用如下 hwnd hfig findwindow null,hwnd 如果得到找到,則返回視窗的控制代碼,否則返回null。當然我們可以使用 setwindowpos hwnd...
如何獲得視窗控制代碼(HWND )和改變視窗屬性
1 對於乙個視窗如何進行操作呢,首先要得到其使用控制代碼,我們可以用findwindow 函式來獲取當前視窗控制代碼,具體使用如下 hwnd hfig findwindow null,hwnd 如果得到找到,則返回視窗的控制代碼,否則返回null。當然我們可以使用 setwindowpos hwnd...