我有一個函數根據它接收到的std :: string值執行特定的操作。如何將值傳遞給MFC消息映射函數on_command
例如:
空隙performTaskOnStringValue(的std :: string);
現在我有一組功能區按鈕(CMFCRibbonButton)需要通過將各自的文本作爲值傳遞給按鈕單擊來調用此函數。
我已經將這些按鈕的ID映射到消息映射宏on_command與按鈕ID。所有的按鍵共享一個公共ID - EG -
ID_RIBBON_BUTTON_ID
消息映射是如下
ON_COMMAND(ID_RIBBON_BUTTON_ID,& MyClass的:: performTaskOnStringValue);
如何將按鈕文本作爲參數傳遞給ButtonClick上的此功能?
由於添加的按鈕發生在飛行中,我不知道我需要創建多少個按鈕。我需要知道的原因是將ID與ON_COMMAND_RANGE關聯,並將它們插入資源文件中,以便將它們識別爲有效的ID。 –
@EternalLearner,如果您正在動態創建按鈕,則不需要在資源文件中包含它們。只需定義一個允許使用的最小和最大值,並跟蹤當前值,每次創建新按鈕時遞增。 –
除了GetDlgItemText以外的所有工作,因爲我添加的元素是CMFCRibbonButton類型。我使用了FindByID(uint ID)方法。謝謝。 –