靜態文字控制項類CStaticText的使用

2021-06-26 12:14:34 字數 1672 閱讀 2685

文字是程式給予使用者提示資訊的一種方式,簡單方便。使用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...