Dela via


ICommandSource Interface

Hanterar kommandon som skickas från ett kommandokällobjekt till en användarkontroll.

Syntax

interface class ICommandSource

Members

Public Methods

Name Description
ICommandSource::AddCommandHandler Lägger till en kommandohanterare i ett kommandokällobjekt.
ICommandSource::AddCommandRangeHandler Lägger till en grupp med kommandohanterare i ett kommandokällobjekt.
ICommandSource::AddCommandRangeUIHandler Lägger till en grupp kommandomeddelandehanterare för användargränssnittet till ett kommandokällobjekt.
ICommandSource::AddCommandUIHandler Lägger till en kommandomeddelandehanterare för användargränssnittet till ett kommandokällobjekt.
ICommandSource::PostCommand Publicerar ett meddelande utan att vänta på att det ska bearbetas.
ICommandSource::RemoveCommandHandler Tar bort en kommandohanterare från ett kommandokällobjekt.
ICommandSource::RemoveCommandRangeHandler Tar bort en grupp med kommandohanterare från ett kommandokällobjekt.
ICommandSource::RemoveCommandRangeUIHandler Tar bort en grupp med kommandomeddelandehanterare för användargränssnittet från ett kommandokällobjekt.
ICommandSource::RemoveCommandUIHandler Tar bort en kommandomeddelandehanterare för användargränssnittet från ett kommandokällobjekt.
ICommandSource::SendCommand Skickar ett meddelande och väntar på att det ska bearbetas innan det returneras.

Remarks

When you host a user control in an MFC View, CWinFormsView Class routes commands and update command UI messages to the user control to allow it to handle MFC commands (for example, frame menu items and toolbar buttons). By implementing ICommandTarget Interface, you give the user control a reference to the ICommandSource object.

Se Så här lägger du till kommandoroutning i Windows Forms Control för ett exempel på hur du använder ICommandTarget.

Mer information om hur du använder Windows-formulär finns i Använda en användarkontroll för Windows-formulär i MFC.

Requirements

Header: afxwinforms.h (defined in assembly atlmfc\lib\mfcmifc80.dll)

ICommandSource::AddCommandHandler

Lägger till en kommandohanterare i ett kommandokällobjekt.

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

Parameters

cmdID
Kommando-ID:t.

cmdHandler
Ett handtag till kommandohanterarmetoden.

Remarks

Den här metoden lägger till kommandohanterarens cmdHandler i kommandokällobjektet och mappar hanteraren till cmdID. Se Så här lägger du till kommandoroutning i Windows Forms Control för ett exempel på hur du använder AddCommandHandler.

ICommandSource::AddCommandRangeHandler

Lägger till en grupp med kommandohanterare i ett kommandokällobjekt.

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

Parameters

cmdIDMin
Startindexet för kommando-ID-intervallet.

cmdIDMax
Slutindexet för kommando-ID-intervallet.

cmdHandler
Ett handtag till den meddelandehanterarmetod som kommandona mappas till.

Remarks

Den här metoden mappar ett sammanhängande intervall med kommando-ID:t till en enda meddelandehanterare och lägger till det i kommandokällobjektet. Detta används för att hantera en grupp relaterade knappar med en metod.

ICommandSource::AddCommandRangeUIHandler

Lägger till en grupp kommandomeddelandehanterare för användargränssnittet till ett kommandokällobjekt.

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

Parameters

cmdIDMin
Startindexet för kommando-ID-intervallet.

cmdIDMax
Slutindexet för kommando-ID-intervallet.

cmdHandler
Ett handtag till den meddelandehanterarmetod som kommandona mappas till.

Remarks

Den här metoden mappar ett sammanhängande intervall med kommando-ID:t till en kommandomeddelandehanterare för ett enda användargränssnitt och lägger till det i kommandokällobjektet. Detta används för att hantera en grupp relaterade knappar med en metod.

ICommandSource::AddCommandUIHandler

Lägger till en kommandomeddelandehanterare för användargränssnittet till ett kommandokällobjekt.

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

Parameters

cmdID
Kommando-ID:t.

cmdUIHandler
Ett handtag till kommandohanteringsmetoden för användargränssnittskommando.

Remarks

Den här metoden lägger till cmdHandler för kommandomeddelandehanteraren för användargränssnittet i kommandokällobjektet och mappar hanteraren till cmdID.

ICommandSource::PostCommand

Publicerar ett meddelande utan att vänta på att det ska bearbetas.

void PostCommand(unsigned int command);

Parameters

command
Kommando-ID för meddelandet som ska publiceras.

Remarks

Den här metoden publicerar asynkront meddelandet som mappats till det ID som anges av kommandot. Den anropar CWnd::P ostMessage för att placera meddelandet i fönstrets meddelandekö och returnerar sedan utan att vänta på att motsvarande fönster ska bearbeta meddelandet.

ICommandSource::RemoveCommandHandler

Tar bort en kommandohanterare från ett kommandokällobjekt.

void RemoveCommandHandler(unsigned int cmdID);

Parameters

cmdID
Kommando-ID:t.

Remarks

Den här metoden tar bort kommandohanteraren som mappats till cmdID från kommandokällobjektet.

ICommandSource::RemoveCommandRangeHandler

Tar bort en grupp med kommandohanterare från ett kommandokällobjekt.

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

Parameters

cmdIDMin
Startindexet för kommando-ID-intervallet.

cmdIDMax
Slutindexet för kommando-ID-intervallet.

Remarks

Den här metoden tar bort en grupp meddelandehanterare, mappade till kommando-ID:n som anges av cmdIDMin och cmdIDMax, från kommandokällobjektet.

ICommandSource::RemoveCommandRangeUIHandler

Tar bort en grupp med kommandomeddelandehanterare för användargränssnittet från ett kommandokällobjekt.

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

Parameters

cmdIDMin
Startindexet för kommando-ID-intervallet.

cmdIDMax
Slutindexet för kommando-ID-intervallet.

Remarks

Den här metoden tar bort en grupp kommandomeddelandehanterare för användargränssnittet, mappade till de kommando-ID:n som anges av cmdIDMin och cmdIDMax, från kommandokällobjektet.

ICommandSource::RemoveCommandUIHandler

Tar bort en kommandomeddelandehanterare för användargränssnittet från ett kommandokällobjekt.

void RemoveCommandUIHandler(unsigned int cmdID);

Parameters

cmdID
Kommando-ID:t.

Remarks

Den här metoden tar bort kommandomeddelandehanteraren för användargränssnittet som mappats till cmdID från kommandokällobjektet.

ICommandSource::SendCommand

Skickar ett meddelande och väntar på att det ska bearbetas innan det returneras.

void SendCommand(unsigned int command);

Parameters

command
Kommando-ID för meddelandet som ska skickas.

Remarks

Den här metoden skickar synkront meddelandet som mappats till det ID som anges av kommandot. Den anropar CWnd::SendMessage för att placera meddelandet i fönstrets meddelandekö och väntar tills fönsterproceduren har bearbetat meddelandet innan det returneras.

See also

Gör så här: Lägga till kommandoroutning i Windows Forms-kontrollen
ICommandTarget Interface