文字是程式給予使用者提示資訊的一種方式,簡單方便。使用mfc的同學們可能再也熟悉不過了,但是有時他也不盡人意,比如我們想像在word中一樣改變他的字型、顏色、大小等屬性時mfc的靜態文字控制項卻沒有給我們提供相關的介面,為了解決這個問題,我們常用的方式就是自繪控制項,但是對於初學者來說自繪也是「亞歷山卓」,所以這裡給大家交流一下如何直接使用別人的成果--擴充套件控制項類的使用。本次以「靜態文字控制項類cstatictext的使用」為例跟大家交流。
先把類的原始碼貼出:
cstatic.h
class cstatictext : public cstatic
}afx_msg
declare_message_map()
};
cstatic.cpp
#include "stdafx.h"
#include "statictext.h"
cstatictext::cstatictext()
cstatictext::~cstatictext()
begin_message_map(cstatictext, cstatic)
//}afx_msg_map
end_message_map()
/// cstatictext message handlers
void cstatictext::onpaint()
void cstatictext::setcaption(cstring szcaption)
void cstatictext::setcolor(colorref color /* = rgb(0, 0, 0)*/)
void cstatictext::setpointfont(bool bchangefont, int npointsize, lpctstr lpszfacename)
下面是使用步驟:
1.當然是把原始碼複製下來新增到自己的工程啦;
2.在對話方塊類的標頭檔案中新增檔案包含:
#include "statictext.h"
3.在對話方塊類的標頭檔案中新增乙個該文字類的公有成員變數:
public:
cstatictext m_staticctrl;
4.在對話方塊類cpp實現:在對話方塊初始化函式oninitdialog()中新增如下**:
// todo: 在此新增額外的初始化**
crect rect;
getclientrect(&rect);
m_staticrect = crect(0, 20, rect.width(), 150);
m_staticctrl.create(_t(" "), ws_child| ws_visible, m_staticrect, this);
m_staticctrl.setpointfont(true, 500);
m_staticctrl.setcaption(_t("學生資訊"));
m_staticctrl.setcolor(rgb(211, 123, 123));
5.效果如圖:
Static Text 靜態文字控制項
靜態文字框的使用 動態建立靜態文字框,需要使用cstatic類的成員函式create。create函式的原型如下 virtual bool create lpctstr lpsztext,dword dwstyle,const rect rect,cwnd pparentwnd,uint nid 0...
VC 獲取靜態文字控制項和文字框控制項上的文字方法
1.獲取靜態文字控制項上的文字 應該用cwnd類的成員函式getwindowtext來獲取,但是首先要獲取這個文字控制項,就要用cwnd類的另乙個成員函式getdlgitem,如果要設定文字內容,則要用另乙個成員函式setwindowtext,靜態文字框在預設情況下不傳送通知訊息的,要將其發生變化需...
文字框類控制項
qlineedit類是乙個單行文字框控制項,可以輸入單行字串,如果需要輸入多行字串,使用qtextedit類。qlineedit類中的常用方法 setakignment 按固定值方式對齊文字 2.clear 3.setechomode 設定文字框顯示格式,允許輸入的文字顯示格式的值可以是 4.set...