IVsUIShell.CreateToolWindow – metoda (UInt32, UInt32, Object, Guid, Guid, Guid, IServiceProvider, String, Int32 , IVsWindowFrame)
Tato metoda vytvoří nástroj okno obsahující vkládání podle punkDocView, nebo clsidDocView parametr, pokud punkDocView parametr je null.
Obor názvů: Microsoft.VisualStudio.Shell.Interop
Sestavení: Microsoft.VisualStudio.Shell.Interop (v Microsoft.VisualStudio.Shell.Interop.dll)
Syntaxe
int CreateToolWindow(
uint grfCTW,
uint dwToolWindowId,
object punkTool,
[InAttribute] ref Guid rclsidTool,
[InAttribute] ref Guid rguidPersistenceSlot,
[InAttribute] ref Guid rguidAutoActivate,
IServiceProvider psp,
string pszCaption,
int[] pfDefaultPosition,
out IVsWindowFrame ppWindowFrame
)
int CreateToolWindow(
unsigned int grfCTW,
unsigned int dwToolWindowId,
Object^ punkTool,
[InAttribute] Guid% rclsidTool,
[InAttribute] Guid% rguidPersistenceSlot,
[InAttribute] Guid% rguidAutoActivate,
IServiceProvider^ psp,
String^ pszCaption,
array<int>^ pfDefaultPosition,
[OutAttribute] IVsWindowFrame^% ppWindowFrame
)
abstract CreateToolWindow :
grfCTW:uint32 *
dwToolWindowId:uint32 *
punkTool:Object *
rclsidTool:Guid byref *
rguidPersistenceSlot:Guid byref *
rguidAutoActivate:Guid byref *
psp:IServiceProvider *
pszCaption:string *
pfDefaultPosition:int[] *
ppWindowFrame:IVsWindowFrame byref -> int
Function CreateToolWindow (
grfCTW As UInteger,
dwToolWindowId As UInteger,
punkTool As Object,
<InAttribute> ByRef rclsidTool As Guid,
<InAttribute> ByRef rguidPersistenceSlot As Guid,
<InAttribute> ByRef rguidAutoActivate As Guid,
psp As IServiceProvider,
pszCaption As String,
pfDefaultPosition As Integer(),
<OutAttribute> ByRef ppWindowFrame As IVsWindowFrame
) As Integer
Parametry
- grfCTW
[v] Určuje způsob vytvoření nového okna nástroje.Další informace naleznete v tématu __VSCREATETOOLWIN.
- dwToolWindowId
[v] ID instance okna nástrojePři vytváření okna jedné instance nástroje, pak předejte průchod nula pro tento parametr.Pokud vytváříte více instancí nástroje okna, pak předejte identifikátor pro další okno k dispozici nástroj.
- punkTool
[v] Objekt zobrazení má být zobrazeno v okně nástroje v oblasti klienta.Tento objekt může být ovládací prvek Active X (jako například IOleInPlaceActiveObject, IOleControl), dokument Active X (jako například IOleView, IOleDocument), nebo jednoduché prostředí vložení (IVsWindowPane).Může být null Pokud je hodnota rclsidTool.
- rclsidTool
[v] Nástroj pro vytvoření třídy ID typu okna nástroje.Uvedené třídy je vytvořena pomocí CreateInstance (clsidTool).Tato funkce je pohodlí pro volající.Může být GUID_NULL, pokud je hodnota punkTool.
- rguidPersistenceSlot
[v] Jedinečný identifikátor pro toto okno nástroje tak prostředí můžete zachovat informace (například umístění okna, dokovací stav atd.) o toto okno nástroje v relacích.Žádné dva nástroje windows můžete sdílet stejný identifikátor GUID.Pokud ano, druhé okno nástroj selže vytváření.
- rguidAutoActivate
[v] Musí být GUID_NULL.Nepoužívejte.Další informace o jak je řízena viditelnost okna nástroje naleznete přehled okna nástroje.
- psp
[v] Ukazatel IServiceProvider rozhraní.Může být null. Tento parametr umožňuje volajícímu zadat další poskytovatel metadat stanovené v okně nástroje a poskytnout tedy navíc kontextu okno nástroje prostřednictvím služby.Při vkládání požadavek na službu, rámeček se pokusí tento požadavek splňovat.Pokud rámeček neposkytuje služby, je dotázána služba určená v parametru psp.Pokud služba není není nalezen, je dotazován poskytovatel metadat globální životní prostředí.
- pszCaption
[v] Titulek okna nástroje.
- pfDefaultPosition
[výstup] Ukazatel na výchozí umístění okna nástroje.Může být null, pokud volající není si přejí tyto informace.Pokud false, pak prostředí neobsahoval žádné uložené informace o poslední pozice okna nástroje (, guidPersistenceSlot nebyl nalezen), a v okně Nástroj je umístěn v některé výchozí umístění na obrazovce.Pokud nastavena na true, pak okna je umístěn, kde uživatel naposledy umístěn a jeho velikosti.
- ppWindowFrame
[výstup] Ukazatel na rám okna obsahující okno nástroje.Pomocí tohoto ukazatele k manipulaci, umístění, velikost, titulek a podobně okna nástroje a získat IUnknown ukazatele rozhraní vložení.
Vrácená hodnota
Type: System.Int32
Pokud metoda uspěje, vrací S_OK.Pokud se nezdaří, vrátí kód chyby.
Poznámky
Podpis COM
Z vsshell.idl:
HRESULT IVsUIShell::CreateToolWindow(
[in] VSCREATETOOLWIN grfCTW,
[in] DWORD dwToolWindowId,
[in] IUnknown *punkTool,
[in] REFCLSID rclsidTool,
[in] REFGUID rguidPersistenceSlot,
[in] REFGUID rguidAutoActivate,
[in] IServiceProvider *pSP,
[in] LPCOLESTR pszCaption,
[out] BOOL *pfDefaultPosition,
[out] IVsWindowFrame **ppWindowFrame
);
Buď předáte hodnotu punkTool parametr nebo rclsidTool parametr.Pokud předáte hodnotu rclsidTool, pak prostředí vytvoří objekt pomocí rclsidTool.Uvedené třídy je vytvořena pomocí CreateInstance (clsidTool).
ToolFrame objektu prostředí implementovat vrácena, z nichž jeden můžete získat punkDocView, titulek, umístění a tak dále.Úplný seznam vlastností, které lze získat přístup, viz __VSFPROPID.
Nástroje systému windows jsou vytvořeny v neviditelné státu.Použití Show nebo ShowNoActivate a aktivujte okno nástroje.
Instanci okna UI hierarchie je vytvořena voláním IVsUIShell::CreateToolWindow (CLSID_VsUIHierarchyWindow).Volající Vrácený ukazatel na rám okna pomocí můžete získat ppunkDocView, na kterém QueryInterface lze volat pro ukazatel na IVsUIHierarchyWindow rozhraní.
Viz také
IVsUIShell – rozhraní
Microsoft.VisualStudio.Shell.Interop – obor názvů
Zpátky na začátek