2014-11-04 58 views
0

我想實現一個函數,這個函數對於我的菜單資源中的不同ID具有不同的行爲。例如:從MFC中的DoDataExchange確定來電顯示號碼

ON_COMMAND(ID_1, Func) 
ON_COMMAND(ID_2, Func) 
ON_COMMAND(ID_3, Func) 


void Func() 
{ 
switch(id) 
case ID_1: 
//DO THIS 
break; 

case ID_2: 
//DO THAT 
break; 
... 

有什麼方法可以確定主叫資源的ID嗎?

回答

2

考慮使用ON_COMMAND_RANGE宏。消息處理程序有UINT nID參數:

afx_msg void Func(UINT nID); 

ON_COMMAND_RANGE(ID_1, ID_3, Func) 

注意:此宏不被MFC應用程序嚮導支持,你需要手動添加。資源ID範圍必須是連續的。

+0

非常感謝。 – 2014-11-04 14:36:36