_DTE.ActiveWindow, propriété
Retourne la fenêtre actuellement active ou la fenêtre située au premier plan si aucune autre fenêtre n'est active.
Espace de noms : EnvDTE
Assembly : EnvDTE (dans EnvDTE.dll)
Syntaxe
'Déclaration
ReadOnly Property ActiveWindow As Window
Window ActiveWindow { get; }
property Window^ ActiveWindow {
Window^ get ();
}
abstract ActiveWindow : Window with get
function get ActiveWindow () : Window
Valeur de propriété
Type : EnvDTE.Window
Objet Window.Retourne Nothing si aucune fenêtre n'est ouverte.
Notes
ActiveWindow retourne la fenêtre active de l'environnement.
Vous ne pouvez définir la légende que dans les fenêtres Outil. Si vous essayez de définir la légende dans d'autres types de fenêtres, telles que des fenêtres de document, le message d'erreur "Erreur non spécifiée" s'affiche.
Exemples
Important
Pour la lisibilité, l'exemple de code suivant ne contient pas la sécurité vérification ou ne termine pas la gestion des erreurs.N'utilisez pas le code suivant dans un environnement de production.
Sub ActiveWindowExample(ByVal dte As DTE2)
' Create two text files.
Dim doc1 As Document = _
dte.ItemOperations.NewFile(, "Document1").Document
dte.ItemOperations.NewFile(, "Document2")
MsgBox("The active window is " & dte.ActiveWindow.Caption)
If MsgBox("Activate Document1?", MsgBoxStyle.YesNo) = _
MsgBoxResult.Yes Then
doc1.Activate()
End If
MsgBox("The active window is " & dte.ActiveWindow.Caption)
End Sub
Important
Pour la lisibilité, l'exemple de code suivant ne contient pas la sécurité vérification ou ne termine pas la gestion des erreurs.N'utilisez pas le code suivant dans un environnement de production.
public void ActiveWindowExample(DTE2 dte)
{
// Create two text files.
Document doc1 = dte.ItemOperations.NewFile(@"General\Text File",
"Document1", Constants.vsViewKindPrimary).Document;
dte.ItemOperations.NewFile(@"General\Text File", "Document2",
Constants.vsViewKindPrimary);
MessageBox.Show("The active window is " +
dte.ActiveWindow.Caption);
if (MessageBox.Show("Activate Document1?", "",
MessageBoxButtons.YesNo) == DialogResult.Yes)
doc1.Activate();
MessageBox.Show("The active window is " +
dte.ActiveWindow.Caption);
}
Important
Pour la lisibilité, l'exemple de code suivant ne contient pas la sécurité vérification ou ne termine pas la gestion des erreurs.N'utilisez pas le code suivant dans un environnement de production.
STDMETHODIMP CConnect::ActiveWindowExample(DTE2 * pApplication)
{
CComPtr<ItemOperations> pItemOperations;
CComPtr<Document> pDocument;
CComPtr<Window> pDocWindow;
CComPtr<Window> pDoc1Window;
CComPtr<Window> pDoc2Window;
CComBSTR bstrDesc;
CComBSTR bstrDocWindow;
CComBSTR bstrFile1Name = "MyDocument1";
CComBSTR bstrFile2Name = "MyDocument2";
CComBSTR bstrFileItem = "General\\Text File";
VARIANT_BOOL bReadOnly = false;
HRESULT hr = S_FALSE;
while (hr != S_OK && pApplication != nullptr)
{
// create two text files
pApplication->get_ItemOperations(&pItemOperations);
if (pItemOperations != nullptr) pItemOperations->NewFile(bstrFileItem,bstrFile1Name,_bstr_t(vsViewKindTextView),&pDoc1Window); else break;
if (pItemOperations != nullptr) pItemOperations->NewFile(bstrFileItem,bstrFile2Name,_bstr_t(vsViewKindTextView),&pDoc2Window); else break;
//get the current active window
pApplication->get_ActiveWindow(&pDocWindow);
if (pDocWindow != nullptr) pDocWindow->get_Caption(&bstrDocWindow); else break;
bstrDesc.Append("The active window is ");
bstrDesc.Append(bstrDocWindow);
_bstr_t bstrIntermed = bstrDesc;
MessageBox(NULL,(LPCSTR) bstrIntermed,"Active Window Example",MB_OK);
bstrDesc = "";
pDocWindow = nullptr;
if (MessageBox(NULL,"Activate Document1?", "", MB_YESNO) == IDYES) pDoc1Window->Activate();
//get the current active window
pApplication->get_ActiveWindow(&pDocWindow);
if (pDocWindow != nullptr) pDocWindow->get_Caption(&bstrDocWindow); else break;
bstrDesc.Append("The active window is ");
bstrDesc.Append(bstrDocWindow);
bstrIntermed = bstrDesc;
MessageBox(NULL,(LPCSTR) bstrIntermed,"Active Window Example",MB_OK);
hr = S_OK;
return hr;
}
return hr;
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, voir Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.
Voir aussi
Référence
Autres ressources
Comment : compiler et exécuter les exemples de code du modèle objet Automation