Custom Control控制項的使用

2021-04-29 15:09:18 字數 1165 閱讀 3304

custom control控制項在使用前一定要初始化,否則會報錯

以下是從網路上查詢到的用法

我的使用了乙個custom control控制項的class一定要有乙個類支援

一、註冊custom control類

要使用custom control,必須把custom control的class屬性設定為乙個視窗類,這個視窗類可以vc的類,例如:button、edit。

在窗體上拉個custom control,設定id為idc_edit,class為edit。在標頭檔案增加乙個cedit類的成員變數:cedit m_text;

然後在oninitdialog()中使用subclassdlgitem把idc_edit和對話方塊連線起來:

m_text.subclassdlgitem(idc_edit,this);

m_text.setwindowtext("custom control例子");

也可以把custom control設定為乙個自定義類。

使用registerclass註冊自定義類,然後設定custom control的class屬性為該類就行了,參考註冊自定義類的**:

bool cmyctrl::registerwndclass(hinstance hinstance)

二、對映自定義訊息

這裡只介紹custom control向父視窗傳送wm_notify訊息,然後對映到操作函式。

在自定義操作類裡增加乙個login()成員函式,當主程式呼叫這個成員函式後,會觸發loginevent事件。

login()的實現**:

bool cmyctrl::login()

在主窗體的標頭檔案裡宣告訊息響應函式:

afx_msg void loginevent;

在begin_message_map裡加上:

on_notify(12345, idc_custom1, loginevent)

12345:訊息**;

idc_custom1:控制項的id

loginevent:對映的函式。

然後再實現loginevent()的**:

void cmaindlg::loginevent()

也可以在主窗體的onnotify裡處理wm_notify訊息。

自己做的的小站,喜歡網路**、喜歡讀書的朋友歡迎來轉一轉

C 控制項 MenuStrip控制項(選單控制項)

一 概述 選單通過存放按照一般主題分組的命令將功能公開給使用者。menustrip 控制項是此版本的 visual studio 和 net framework 中的新功能。使用該控制項,可以輕鬆建立 microsoft office 中那樣的選單。menustrip 控制項支援多文件介面 mdi ...

隱藏控制項 HiddenField控制項

hiddenfield 控制項hiddenfield 控制項顧名思義就是隱藏輸入框的伺服器控制項 它能讓你儲存那些不需要顯示在頁面上的且對安全性要求不高的資料。也許這個時候應該有這麼乙個疑問,為什麼有了 viewstate session 和cookie 等狀態儲存機制,還需要用起 hiddenfi...

標籤控制項 CTableCtrl 控制項

前言 區別 ctablectrl和cpropertysheet.乙個是控制項,另乙個是對話方塊屬性類 目錄 0.訊息彙總 1.常用方法總結 0.訊息彙總 1.常用方法總結 定義視窗資源以及和類進行相關繫結物件兩個,標籤控制項新增兩個子項.建立視窗,設定相關區域,移動視窗.原始碼 m tab.inse...