共用方式為


ICommandSource 介面

管理從命令來源對象傳送給使用者控制件的命令。

語法

interface class ICommandSource

成員

公用方法

名稱 描述
ICommandSource::AddCommandHandler 將命令處理程式新增至命令來源物件。
ICommandSource::AddCommandRangeHandler 將命令處理程式群組新增至命令來源物件。
ICommandSource::AddCommandRangeUIHandler 將使用者介面命令訊息處理程式群組新增至命令來源物件。
ICommandSource::AddCommandUIHandler 將使用者介面命令訊息處理程式新增至命令來源物件。
ICommandSource::P ostCommand 張貼訊息而不等待處理。
ICommandSource::RemoveCommandHandler 從命令來源物件中移除命令處理程式。
ICommandSource::RemoveCommandRangeHandler 從命令來源物件中移除命令處理程式群組。
ICommandSource::RemoveCommandRangeUIHandler 從命令來源物件中移除一組使用者介面命令訊息處理程式。
ICommandSource::RemoveCommandUIHandler 從命令來源物件中移除使用者介面命令訊息處理程式。
ICommandSource::SendCommand 傳送訊息,並等候訊息在傳回之前進行處理。

備註

當您在 MFC 檢視中裝載使用者控制時, CWinFormsView 類別 會將命令路由傳送命令,並將命令 UI 訊息更新至使用者控件,以允許它處理 MFC 命令(例如框架功能表項和工具欄按鈕)。 藉由實作 ICommandTarget 介面,您可以為使用者控件提供對象的參考 ICommandSource

如需如何使用 ICommandTarget的範例,請參閱如何:將命令路由新增至 Windows Forms 控件

如需使用 Windows Forms 的詳細資訊,請參閱 在 MFC 中使用 Windows Form 使用者控制件。

需求

標頭: afxwinforms.h (定義於元件 atlmfc\lib\mfcmifc80.dll)

ICommandSource::AddCommandHandler

將命令處理程式新增至命令來源物件。

void AddCommandHandler(
    unsigned int cmdID,
    CommandHandler^ cmdHandler);

參數

cmdID
命令識別碼。 cmdHandler
命令處理程式方法的句柄。

備註

這個方法會將命令處理程式 cmdHandler 新增至命令來源物件,並將處理程式對應至 cmdID。 如需如何使用 AddCommandHandler 的範例,請參閱 如何:將命令路由新增至 Windows Forms 控制件

ICommandSource::AddCommandRangeHandler

將命令處理程式群組新增至命令來源物件。

void AddCommandRangeHandler(
    unsigned int cmdIDMin,
    unsigned int cmdIDMax,
    CommandHandler^ cmdHandler);

參數

cmdIDMin
命令標識元範圍的起始索引。 cmdIDMax
命令標識元範圍的結束索引。 cmdHandler
要對應命令之訊息處理程式方法的句柄。

備註

這個方法會將連續的命令標識符範圍對應至單一訊息處理程式,並將其新增至命令來源物件。 這用於使用一種方法處理一組相關按鈕。

ICommandSource::AddCommandRangeUIHandler

將使用者介面命令訊息處理程式群組新增至命令來源物件。

void AddCommandRangeUIHandler(
    unsigned int cmdIDMin,
    unsigned int cmdIDMax,
    CommandUIHandler^ cmdUIHandler);

參數

cmdIDMin
命令標識元範圍的起始索引。 cmdIDMax
命令標識元範圍的結束索引。 cmdHandler
要對應命令之訊息處理程式方法的句柄。

備註

這個方法會將連續的命令標識符範圍對應至單一使用者介面命令訊息處理程式,並將它新增至命令來源物件。 這用於使用一種方法處理一組相關按鈕。

ICommandSource::AddCommandUIHandler

將使用者介面命令訊息處理程式新增至命令來源物件。

void AddCommandUIHandler(
    unsigned int cmdID,
    CommandUIHandler^ cmdUIHandler);

參數

cmdID
命令識別碼。 cmdUIHandler
使用者介面命令訊息處理程式方法的句柄。

備註

這個方法會將使用者介面命令訊息處理程式 cmdHandler 新增至命令來源物件,並將處理程式對應至 cmdID。

ICommandSource::P ostCommand

張貼訊息而不等待處理。

void PostCommand(unsigned int command);

參數

命令
要張貼之訊息的命令標識碼。

備註

這個方法會以異步方式張貼對應至命令所指定標識符的訊息。 它會呼叫 CWnd::P ostMessage 將訊息放在視窗的訊息佇列中,然後傳回 ,而不需要等待對應的視窗來處理訊息。

ICommandSource::RemoveCommandHandler

從命令來源物件中移除命令處理程式。

void RemoveCommandHandler(unsigned int cmdID);

參數

cmdID
命令 ID。

備註

這個方法會從命令來源物件中移除對應至 cmdID 的命令處理程式。

ICommandSource::RemoveCommandRangeHandler

從命令來源物件中移除命令處理程式群組。

void RemoveCommandRangeUIHandler(
    unsigned int cmdIDMin,
    unsigned int cmdIDMax);

參數

cmdIDMin
命令標識元範圍的起始索引。 cmdIDMax
命令標識元範圍的結束索引。

備註

這個方法會從命令來源物件中移除一組訊息處理程式,這些處理程式會對應至 cmdIDMin 和 cmdIDMax 所指定的命令識別碼。

ICommandSource::RemoveCommandRangeUIHandler

從命令來源物件中移除一組使用者介面命令訊息處理程式。

void RemoveCommandRangeUIHandler(
    unsigned int cmdIDMin,
    unsigned int cmdIDMax);

參數

cmdIDMin
命令標識元範圍的起始索引。 cmdIDMax
命令標識元範圍的結束索引。

備註

這個方法會從命令來源物件中移除一組使用者介面命令訊息處理程式,這些處理程式會對應至 cmdIDMin 和 cmdIDMax 所指定的命令標識碼。

ICommandSource::RemoveCommandUIHandler

從命令來源物件中移除使用者介面命令訊息處理程式。

void RemoveCommandUIHandler(unsigned int cmdID);

參數

cmdID
命令 ID。

備註

這個方法會從命令來源物件中移除對應至 cmdID 的使用者介面命令訊息處理程式。

ICommandSource::SendCommand

傳送訊息,並等候訊息在傳回之前進行處理。

void SendCommand(unsigned int command);

參數

命令
要傳送之訊息的命令標識碼。

備註

這個方法會同步傳送對應至命令所指定標識碼的訊息。 它會呼叫 CWnd::SendMessage 將訊息放在視窗的訊息佇列中,並等候該視窗程式在傳回之前處理訊息。

另請參閱

如何:新增命令傳送至 Windows Forms 控制項
ICommandTarget 介面