Metoda IOleInPlaceComponentUIManager.UIActivateForMe — (UInt32, Guid, IOleInPlaceActiveObject, IOleCommandTarget, UInt32, Int32 )
Żądania wysyłane przez SOleComponentUIManager usługi udział w aktywacji lub dezaktywacji obiektu VSPackage w miejscu.
Przestrzeń nazw: Microsoft.VisualStudio.Shell.Interop
Zestaw: Microsoft.VisualStudio.Shell.Interop (w Microsoft.VisualStudio.Shell.Interop.dll)
Składnia
int UIActivateForMe(
uint dwCompRole,
[InAttribute] ref Guid rclsidActive,
IOleInPlaceActiveObject pIPActObj,
IOleCommandTarget pCmdTrgtActive,
uint cCmdGrpId,
int[] rgnCmdGrpId
)
int UIActivateForMe(
unsigned int dwCompRole,
[InAttribute] Guid% rclsidActive,
IOleInPlaceActiveObject^ pIPActObj,
IOleCommandTarget^ pCmdTrgtActive,
unsigned int cCmdGrpId,
array<int>^ rgnCmdGrpId
)
abstract UIActivateForMe :
dwCompRole:uint32 *
rclsidActive:Guid byref *
pIPActObj:IOleInPlaceActiveObject *
pCmdTrgtActive:IOleCommandTarget *
cCmdGrpId:uint32 *
rgnCmdGrpId:int[] -> int
Function UIActivateForMe (
dwCompRole As UInteger,
<InAttribute> ByRef rclsidActive As Guid,
pIPActObj As IOleInPlaceActiveObject,
pCmdTrgtActive As IOleCommandTarget,
cCmdGrpId As UInteger,
rgnCmdGrpId As Integer()
) As Integer
Parametry
dwCompRole
Type: System.UInt32[in] Rola uaktywnianie lub dezaktywowanie obiektu VSPackage w miejscu. Aby uzyskać prawidłową dwCompRole wartości, zobacz OLEROLE.
rclsidActive
Type: System.Guid[in] Identyfikator (CLSID) obiektu VSPackage w miejscu, uaktywnianie lub dezaktywowanie klasy.
pIPActObj
Type: Microsoft.VisualStudio.OLE.Interop.IOleInPlaceActiveObject[in] Wskaźnik do IOleInPlaceActiveObject interfejs najbardziej aktywnego obiektu.pIPActObj Parametr musi być null podczas dezaktywowania obiektu w miejscu i wskaźnik nieprawidłowy interfejs, gdy jest aktywowana.
pCmdTrgtActive
Type: Microsoft.VisualStudio.OLE.Interop.IOleCommandTarget[in] Wskaźnik do IOleCommandTarget interfejs do obsługi wysyłania poleceń aktywnego obiektu w miejscu.pCmdTrgtActive Parametr musi mieć wartości null, gdy obiekt w miejscu jest dezaktywowanie i wskaźnik interfejsu prawidłowe po jest aktywowana.
cCmdGrpId
Type: System.UInt32[in] Liczba identyfikatorów niestandardowy pasek narzędzi rgnCmdGrpId parametru.
rgnCmdGrpId
Type: System.Int32[][in] Tablica identyfikatorów dla niestandardowego paska narzędzi do wyświetlania przez SOleComponentUIManager usługi.
Wartość zwracana
Type: System.Int32
Jeśli metoda zakończy się pomyślnie, zwraca S_OK. Jeśli nie, zwraca kod błędu.
Uwagi
Podpis COM
Z oleipc.idl:
HRESULT IOleInPlaceComponentUIManager::UIActivateForMe(
[in] DWORD dwCompRole,
[in] REFCLSID rclsidActive,
[in] IOleInPlaceActiveObject *pIPActObj,
[in] IOleCommandTarget *pCmdTrgtActive,
[in] ULONG cCmdGrpId,
[in] LONG *rgnCmdGrpId
);
UIActivateForMe to metoda podstawowego odróżnia stosowania SOleComponentUIManager usługi przy użyciu tradycyjnych Aktywacja w miejscu OLE. Gdy wywołuje obiekt VSPackage w miejscu UIActivateForMe, SOleComponentUIManager usługi wykonuje wszystkie niezbędne kroki w celu integracji obiekt menu, paski narzędzi i polecenia w środowisku. Obiekt nie trzeba wziąć udział w negocjowanie obramowania miejsca, aby włączyć scalanie menu, jak to konieczne, aktywacja w miejscu OLE.
UIActivateForMe logiczne zastępuje SetActiveObject metody w IOleInPlaceFrame interfejsu. Przekazuje obiekt VSPackage w miejscu jego pIPActObj wskaźnik do środowiska w przypadku tej metody, a nie za pomocą kontenera UIActivateForMe Metoda, co jest wykonywane w standardowych Aktywacja w miejscu OLE.
Do zaimplementowania UIActivateForMe, koordynować tej metody wykonania UIActivateForMe metody w IOleInPlaceFrame interfejsu. Efekt tego wywołania jest podobny do wywoływania obiektu OLE:
IOleInPlaceUIWindow::SetActiveObject(pActiveObj);
IOleInPlaceFrame::SetMenu(null);
IOleInPlaceUIWindow::SetBorderSpace(null);
Kiedy obiekt VSPackage w miejscu przyjmuje fokus przez wywołanie UIActivateForMe, SOleComponentUIManager Usługa zastępuje wszelkie niestandardowe menu i pasków zadań wyświetlane w imieniu poprzedniej aktywnego obiektu z tymi nowego aktywnego obiektu. Jeśli nowy obiekt traci fokus lub zagnieżdżony obiekt ma fokus, te menu i paski narzędzi są usuwane.
Zobacz też
Interfejs IOleInPlaceComponentUIManager
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Powrót do początku