Gewusst wie: Greifen Sie auf die integrierte Schriftarten und das Farbschema zu
Die integrierte Entwicklungsumgebung (IDE) von Visual Studio verfügt über ein Schema für Schriftarten und Farben, das dem Editorfenster zugeordnet ist. Sie können dieses Schema durch die IVsTextView-Schnittstelle zugreifen.
Um die integrierte Schriftarten und Farben das Schema verwenden, muss ein VSPackage:
Definieren Sie eine Kategorie, die mit den Farben für Standardschriftart und zu verwenden.
Registrieren Sie die Kategorie mit den Farben Standardschriftart und dem Server.
Melden Sie sich die IDE an, dass ein bestimmtes Fenster in der integrierten Anzeigen von Elementen und Kategorien verwendet werden, indem Sie die T:Microsoft.VisualStudio.TextManager.Interop.IVsTextEditorPropertyCategoryContainer und T:Microsoft.VisualStudio.TextManager.Interop.IVsTextEditorPropertyContainer-Schnittstellen verwenden.
Die IDE verwendet die resultierende Kategorie als Handle für das Fenster. Der Name der Kategorie wird im Einstellungen anzeigen für: Dropdownfeld in der Schriftarten und Farben-Eigenschaftenseite angezeigt.
So erstellen Sie eine Kategorie mit integrierter Schriftarten und Farben definieren
Erstellen Sie ein beliebiges GUID.
Diese GUIDs wird verwendet, um eine Kategorie eindeutig zu identifizieren. Diese Kategorie verwendet die Standardschriftart IDE und Farben sie erneut. Weitere Informationen finden Sie unter GUIDGEN Sample: Generates Globally Unique Identifiers (GUIDs).
Hinweis
Wenn Schriftart und Farbdaten mit IVsFontAndColorEvents oder anderen Schnittstellen abgerufen werden, VSPackages-Verwendung dieses GUID, integrierte Informationen zu verweisen.
Der Name der Kategorie muss zu einer Zeichenfolgentabelle innerhalb von VSPackages Datei Ressourcen hinzugefügt werden (.rc), damit er bei Bedarf lokalisiert werden kann, wenn er in der IDE angezeigt wird.
Weitere Informationen finden Sie unter Hinzufügen oder Löschen von Zeichenfolgen.
So erstellen Sie eine Kategorie mit integrierter Schriftarten und Farben registrieren
Erstellen Sie einen speziellen Typ registrierungseintrag Kategorien an folgendem Speicherort:
[HKLM \ SOFTWARE \ Microsoft \ Visual Studio \ <Visual Studio version> \ FontAndColors \ <Category> ]
<Category> ist der nicht lokalisierte Name der Kategorie.
Füllen Sie die Registrierung auf, um die vordefinierten Schriftgrad und das Farbschema mit vier Werten zu verwenden:
Name
Typ
Daten
Beschreibung
Kategorie
REG_SZ
GUID
Ein beliebiges GUID, die eine Kategorie identifiziert, die die vordefinierte Schriftart und das Farbschema enthält.
Package
REG_SZ
GUID
{F5E7E71D-1401-11D1-883B-0000F87579D2}
Diese GUIDs wird durch alle VSPackages verwendet, das die Standardschriftart- und Farben Konfigurationen verwenden.
NameID
REG_DWORD
ID
Die Ressourcen-ID einer lokalisierbaren Kategorienamens in einem VSPackage.
ToolWindowPackage
REG_SZ
GUID
Die GUID VSPackages, das die IVsTextView-Schnittstelle implementiert.
Um die Verwendung von vom System bereitgestellten Schriftarten und Farben initiieren
Erstellen Sie eine Instanz der T:Microsoft.VisualStudio.TextManager.Interop.IVsTextEditorPropertyCategoryContainer-Schnittstelle als Teil der Implementierung und der Initialisierung des Fensters.
Rufen Sie die GetPropertyCategory-Methode aufgerufen, um eine Instanz der T:Microsoft.VisualStudio.TextManager.Interop.IVsTextEditorPropertyContainer-Schnittstelle entsprechend der aktuellen IVsTextView-Instanz abzurufen.
SetProperty zweimal aufgerufen.
Aufruf einmal mit VSEDITPROPID_ViewGeneral_ColorCategoryals Argument.
Aufruf einmal mit VSEDITPROPID_ViewGeneral_FontCategory als Argument.
Dies legt fest und macht die Standardschriftart und Farben Dienste als Eigenschaft des Fensters.
Beispiel
Im folgenden Beispiel wird die Verwendung von integrierten Schriftarten und Farben.
CComVariant vt;
CComQIPtr<IVsTextEditorPropertyCategoryContainer> spPropCatContainer(m_spView);
if (spPropCatContainer != NULL){
CComPtr<IVsTextEditorPropertyContainer> spPropContainer;
if (SUCCEEDED(spPropCatContainer->GetPropertyCategory(GUID_EditPropCategory_View_MasterSettings,
&spPropContainer))){
CComVariant vt;CComVariant VariantGUID(bstrGuidText);
spPropContainer->SetProperty(VSEDITPROPID_ViewGeneral_FontCategory, VariantGUID);
spPropContainer->SetProperty(VSEDITPROPID_ViewGeneral_ColorCategory, VariantGUID);
}
}
Siehe auch
Konzepte
Schriftart und Farbinformationen für Text-Farbauftrag abrufen
Gespeicherte Schriftart-und zugreifen Farben-Einstellungen
Schriftart-und Farben-Übersicht