CComboBox使用SetWindowText()无效的解决办法

来源:互联网 发布:萧技网络电视台 编辑:程序博客网 时间:2024/06/02 06:28

1.在Resource.h中添加自定义消息

#define WM_COMBOBOX_TEXT_CHANGED WM_USER + 100


2.在test.h中声明消息处理函数

afx_msg LRESULT OnComboBoxTextChanged(WPARAM wParam, LPARAM lParam);


3.在test.cpp中添加消息映射处理

ON_MESSAGE(WM_COMBOBOX_TEXT_CHANGED, &CFileDownload::OnComboBoxTextChanged)


4.在test.cpp中实现自定义消息处理

LRESULT CFileDownload::OnComboBoxTextChanged(WPARAM wParam, LPARAM lParam)
{
m_cbTest.SetWindowText("test");
return 0;
}


5.在CBN_SELCHANGE的消息映射函数中,发送消息WM_COMBOBOX_TEXT_CHANGED

void CFileDownload::OnCbnSelchangeComboTest()
{
PostMessage(WM_COMBOBOX_TEXT_CHANGED, 0, 0);
}

原创粉丝点击