一般情況下,sdi主視窗標題形式為: "文件標題 - 主視窗標題"。
參見winfrm.cpp的**:
void cframewnd::onupdateframetitle(bool baddtotitle)
void cframewnd::updateframetitlefordocument(lpctstr lpszdocname)
else
afxsetwindowtext(m_hwnd, (lpctstr) windowtext);
}可以看到, 主視窗最終顯示的 title 是由文擋名和主視窗標題組成的,修改文件標題或主視窗標題都能影響最後的結果。
有下面幾種修改主視窗title的方法:
方法一:文件標題的改變
cdocument::settitle()
例如,在onnewdocument()中就可以用settitle()修改文件標題
方法二:主視窗標題的改變
主視窗的標題預設是工程的檔名
2.1 利用resourceview開啟工程的資源,修改string table中的idr_mainframe的值
2.2 在 cmainframe::precreatewindow() 修改cmainframe::m_strtitle
以上辦法只能修改主視窗title 的組成內容,並不能徹底改變主視窗title形式
方法五:處理wm_settext訊息
這是終極辦法,如果想要動態設定主視窗title,只有用這個辦法了。
任何設定標題的動作最終都是向主視窗傳送wm_settext訊息,我們只需要處理這個訊息就可以了。
修改cmainframe
mainframe.h:
afx_msg lresult onsettext( wparam wparam, lparam lparam);
mainframe.cpp:
on_message(wm_settext, onsettext)
lresult cmainframe::onsettext( wparam wparam, lparam lparam)
在cmainframe::onsettext中你可以隨意設定你的主視窗title。
如果你只是想設定乙個特定的主視窗標題,只需要按2.2提供的方法設定m_strtitle,而讓cmainframe::onsettext直接返回。
我是菜鳥 MFC 單文件 修改標題
我是小白,我希望我把我的進步記錄下來,通過自己的不斷努力,最終可以變為老鳥!走一步再走一步 好了,步入正題,對於mfc的初學者來說,當自己建乙個單文件程式,很想有乙個自己軟體 確切的 的名字,今天,咱們就學習如何修改標題!備註 vs2010 強烈建議剛學習的小白,用vs2010,老師說的,反正自己用...
修改MFC主視窗標題
在vs2010下新建乙個mfc的多文件應用程式,程式預設的標題是 文件名 工程名 圖示預設的是寫著mfc的三個方塊。但在很多軟體中都不是使用的預設設定,開發者們都將標題和圖示改過,以符合專案要求,而且直觀好看。一.修改標題 標題分為前後兩部分,前面一部分預設是文件名,後面一部分預設是工程名,比如我新...
修改 Dedecms 文件文章標題長度的方法
目前,dedecms限制了文章發表長度為60或100位元組,尤其對於外文 來說,這點長度實在太短了。步驟如下 步驟1 進入templets style page.css 查詢以下為引用的內容 viewbox title h2 viewbox info height 24px line height ...