視窗最大的問題 |
尚未結案
|
figer
一般會員 發表:4 回覆:3 積分:1 註冊:2005-05-27 發送簡訊給我 |
小弟有去搜尋了文章 看到了下面這段程式碼 DWORD style=0;
style = GetWindowLong(hwnd,GWL_STYLE);
SetWindowLong(hwnd,GWL_STYLE,(style&(~WS_CAPTION)));
SendMessage(hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); 因為看不懂,所以想請教各位前輩 這段程式碼的功用嗎? 感謝喔>"< 因為有需要用到說在程式執行時,讓視窗放到最大 因為一開始設定
Form->Align = alClient ; 這個並不是我需要用到的 而如果把這行加在程式裡面 執行時又會不知道為什麼會改到參數的大小 所以想請問有沒有辦法就是在一個按鈕 就可以讓他放到最大 謝謝各位前輩
|
deity
尊榮會員 發表:90 回覆:876 積分:678 註冊:2003-05-09 發送簡訊給我 |
您好:
DWORD style=0;
//从指定窗口的结构中取得窗口样式信息
style = GetWindowLong(hwnd,GWL_STYLE);
//在窗口结构中为指定的窗口设置新的窗口样式信息,这里消除Title中的最大小化的按妞
SetWindowLong(hwnd,GWL_STYLE,(style&(~WS_CAPTION)));
//发送一条最大化指令到指定窗口
SendMessage(hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
如果您只是想点击一個按鈕让其最大化,只需将
SendMessage(hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0);
写入button的onclick事件中即可。
或直接在button的onclick事件中下Form1->WindowState=wsMaximized;
作用是一样的。
============================
为什么经过多年以后,得失的过程如此冷漠
============================
發表人 - deity 於 2005/07/28 17:40:24
|
figer
一般會員 發表:4 回覆:3 積分:1 註冊:2005-05-27 發送簡訊給我 |
|
andychang1690
資深會員 發表:20 回覆:694 積分:442 註冊:2003-03-14 發送簡訊給我 |
引言: 感謝喔 不過 我將 SendMessage(hwnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0); 這行加入程式碼裡面 他出現hwnd尚未定義 所以想請教該如何改呢 感謝萬分figer:顯然你並沒有消化你看到的程式碼 SetWindowLong(hwnd,GWL_STYLE,style); //hwnd為有效的視訊視窗Handle HANDLE hwnd=可以由 findwindow或GetWindow或OpenMutex等等得到看你的處理了! 請參考! Andy Chang
------
Andy Chang |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |