MFC BS GROUPBOX 響應子控制項事件

2021-10-25 11:30:19 字數 1556 閱讀 3049

使用vs2012做專案,需要動態建立多個按鈕,且按鈕都要分組管理。

1、首先定義乙個子類mypanel,繼承cbutton

在create時設定按鈕的樣式為bs_groupbox,即可定義成乙個容器控制項

2、再定義裡面的按鈕或其他控制項,父控制項指向mypanel,例:

ptermitem-

>btntermimg.

create(_t

(""),ws_child | ws_visible | ss_icon | ss_centerimage,

crect(11

,20,75

,84),

(cwnd*)&

(ptermitem-

>panterm)

,i +start_termimg_id)

; hicon hc =

(hicon)

::loadimage((

)->m_hinstance,

makeintresource

(idi_memberoff)

,image_icon,0,

0,lr_defaultcolor | lr_createdibsection)

; ptermitem-

>btntermimg.

seticon

(hc)

;

這裡是個控制項,載入的是icon,如果使用loadicon載入的是預設的尺寸大小,如果需要指定大小,使用loadimage可以指定尺寸,0,0是按尺寸大小,必須設定樣式ss_icon | ss_centerimage。

開始放的是bitmap的,但是當父控制項有顏色裡,bitmap會有白底,無法透明。

3、子控制項的訊息事件會傳送到父控制項,在視窗中無法響應,需要在子類mypanel中重寫虛函式**訊息

bool mypanel::

oncmdmsg

(uint nid,

int ncode,

void

* pextra, afx_cmdhandlerinfo* phandlerinfo)

return false;

}

4、這樣在視窗中新增按鈕的事件就能正常響應了

begin_message_map

(mcurightview, cscrollview)

on_command_range

(start_btnbroadcast_id,start_btnbroadcast_id+

59,onbnclickedbuttonbroadcast)

end_message_map

()

afx_msg void

onbnclickedbuttonbroadcast

(uint iid)

;

void mcurightview::

onbnclickedbuttonbroadcast

(uint iid)

網頁請求響應(響應狀態碼,響應頭)

響應狀態碼表示伺服器的響應狀態。在爬蟲中,我們可以根據狀態碼來判斷伺服器響應狀態,如狀態碼為200,則證明成功返回資料,再進行進一步的處理,否則直接忽略。以下給出常見的錯誤 及錯誤原因 狀態碼說明 詳情100 繼續請求者應當繼續提出請求。伺服器已經接收到請求的一部分,正在等待其餘部分 101切換協議...

eclipse 響應慢 或 未響應

eclipse啟動正常,但在開啟工程時會出未響應的情況,在任務管理器中察看也是味應用。造成這種情況原因有3 一 cpu不夠用,在任務管理器中察看cpu會達到90 以上,甚至是100 剛才看了cpu才24 顯然問題不在這裡。二 記憶體不夠,在任務管理器中察看記憶體才用1.7g,我有機器記憶體4g,安裝...

獲取nginx響應頭 響應體

在原生nginx中無法獲取響應相關資訊。我們可以在openresty中借助lua來獲取這些資訊。注 讀取響應時不需要設定lua need request body on 這個指令是openresty在讀取請求時設定的,否則就需要在讀取請求前使用ngx.req.read body 例如 ngx.req...