MFC之修改視窗外觀

2021-07-04 04:18:07 字數 1345 閱讀 2237

改變視窗實在precreatewindow中進行操作,

因為 你需要在建立視窗之前,就要設定視窗的型別;

而在fws_dototitle這個操作是把doc視窗標題預設成為fram視窗辯題;

在視窗建立之後也可以修改視窗屬性;

oncreate()中

setwindowlong(hwnd,int,long)

第乙個是視窗的控制代碼,第二個所要改變屬性的索引;第三個是改變索引物件的值;

long getwindowlong(hwnd,int);

得到視窗的屬性的值;

setwindowlong(this->m_hwnd,gwl_style,getwindowlong(m_hwnd,gcl_style)&~fws_ddtotitle));

改變視窗外觀可以使用在precreatewindow()中建立自己的視窗;

struct wndclass wndcls;

然後設定window的屬性;w

wnd.hinstance = afxgetinstancehandle();

afxgetinstancehandle()是乙個全域性函式;

這裡需要特別注意一下,

就是咋最後precreatewindow中需要最後一部,改為

cs.lpclassname = "---"這裡填寫的是你註冊的視窗的名字//特別重點;

如果這裡沒有設定沒有任何效果;

然後看到view類的游標和背景沒有變,

為什麼呢;

這是因為view覆蓋了fram,我們只需要在

view中的precreatewindow()然後直接cs.lpclassname = ""你註冊的視窗

這樣之後你的視窗的背景和游標就變了;

總結一下;

修改圖示用的是fram類,而修改背景和游標用的是view類;

最後還有乙個改變游標和圖示和背景;

在fram precreatewindow()中

afxregisterwndclass()這是乙個全域性函式;

cs.lpclassname = afxregisterwndclass(null,游標,背景,圖示);

這裡把得到的視窗名字改為了afxregisterwndclass得到的視窗名字;

在precreatewindow()中註冊乙個視窗類,而在oncreate中設計視窗的

圖示游標背景;

還有乙個全域性的在任何時候都可以改變視窗的屬性;

oncreate()函式中設計視窗的圖示游標背景;

setclasslong(null,gcl_hicon,設定的視窗圖示)

getclasslong();

MFC修改應用程式視窗外觀

1.視窗建立之前修改 bool cmainframe precreatewindow createstruct cs 執行結果 2.視窗建立之後修改 int cmainframe oncreate lpcreatestruct lpcreatestruct 執行結果 3.字串資源idr mainfr...

MFC 改變視窗外形

windows中所有視窗顯示預設為矩形,很多時候我們希望視窗的形狀可以隨意變化。這個時候我們就需要使用mfc的crgn類,每乙個視窗都有乙個自己的crgn,定義了當前視窗的顯示區域,crgn就好像是在一張上新增了相框,相框的形狀就決定了 視窗的顯示範圍。當然顯示區域之外就屬於其他視窗。一,多邊形視窗...

MS DOS方式視窗外觀設定

設定ms dos方式視窗為全屏顯示方式 開啟hkey current userconsole 子鍵分支,在右邊的視窗內新建 修改雙位元組值 fullscreen 將其值設為1。設定ms dos方式視窗所使用的字型 開啟 子鍵分支,在右邊的視窗中修改鍵值項 facename 將其值設為所希望的字型名稱...