Přidání ikon do příkazů nabídky
Příkazy se můžou zobrazovat na nabídkách i panelech nástrojů. Na panelech nástrojů je běžné, že se příkaz zobrazí jenom s ikonou (pro úsporu místa) v nabídkách, kdy se příkaz obvykle zobrazuje s ikonou i textem.
Ikony mají šířku 16 pixelů o 16 pixelů a můžou mít buď 8bitovou barevnou hloubku (256 barev), nebo 32bitovou hloubku barev (true color). Preferují se 32bitové ikony barev. Ikony jsou obvykle uspořádány do jednoho vodorovného řádku v jednom rastrovém obrázku, i když je povoleno více rastrových obrázků. Tento rastrový obrázek je deklarován v souboru .vsct spolu s jednotlivými ikonami dostupnými v rastrovém obrázku. Další podrobnosti najdete v referenčních informacích k elementu Bitmaps.
Přidání ikony do příkazu
Následující postup předpokládá, že máte existující projekt VSPackage s příkazem nabídky. Postup najdete v tématu Vytvoření rozšíření pomocí příkazu nabídky.
Vytvořte rastrový obrázek s barevnou hloubkou 32 bitů. Ikona je vždy 16 x 16, takže tento rastrový obrázek musí mít výšku 16 pixelů a násobek šířky 16 pixelů.
Každá ikona se umístí na rastrový obrázek vedle sebe v jednom řádku. Pomocí alfa kanálu označte místa průhlednosti v každé ikoně.
Pokud použijete 8bitovou hloubku barev, použijte jako průhlednost purpurovou
RGB(255,0,255)
barvu. Preferují se ale 32bitové ikony barev.Zkopírujte soubor ikony do adresáře Resources v projektu VSPackage. V Průzkumník řešení přidejte ikonu do projektu. (Vyberte Zdroje a v místní nabídce klikněte na Přidat, pak Na existující položku a vyberte soubor ikony.)
Otevřete soubor .vsct v editoru.
GuidSymbol
Přidejte prvek s názvem testIcon. Vytvořte identifikátor GUID (Nástroje>vytvořit identifikátor GUID, pak vyberte Formát registru a klikněte na Kopírovat) a vložte ho do atributu.value
Výsledek by měl vypadat takto:<!-- Create your own GUID --> <GuidSymbol name="testIcon" value="{00000000-0000-0000-0000-0000}">
<IDSymbol>
Přidejte ikonu. Atributname
je ID ikony avalue
označuje jeho pozici na pruhu, pokud existuje. Pokud je jenom jedna ikona, přidejte 1. Výsledek by měl vypadat takto:<!-- Create your own GUID --> <GuidSymbol name="testIcon" value="{00000000-0000-0000-0000-0000}"> <IDSymbol name="testIcon1" value="1" /> </GuidSymbol>
Vytvořte
<Bitmap>
v oddílu<Bitmaps>
v<Commands>
oddílu souboru .vsct rastrový obrázek obsahující ikony.guid
Nastavte hodnotu na název<GuidSymbol>
prvku, který jste vytvořili v předchozím kroku.href
Nastavte hodnotu na relativní cestu rastrového souboru (v tomto případě Resources\<icon název> souboru.usedList
Nastavte hodnotu na IDSymbol, který jste vytvořili dříve. Tento atribut určuje čárkami oddělený seznam ikon, které se mají použít v balíčku VSPackage. Ikony, které nejsou v seznamu, jsou vyloučené kompilace formulářů.Blok Bitmap by měl vypadat takto:
<Bitmap guid="testIcon" href="Resources\<icon file name>" usedList="testIcon1"/>
V existujícím
<Button>
elementuIcon
nastavte element na GUIDSymbol a IDSymbol hodnoty, které jste vytvořili dříve. Tady je příklad prvku Button s těmito hodnotami:<Button guid="guidAddIconCmdSet" id="cmdidMyCommand" priority="0x0100" type="Button"> <Parent guid="guidAddIconCmdSet" id="MyMenuGroup" /> <Icon guid="testIcon" id="testIcon1" /> <Strings> <ButtonText>My Command name</ButtonText> </Strings> </Button>
Otestujte ikonu. Sestavte projekt a spusťte ladění. V experimentální instanci vyhledejte příkaz. Měla by se zobrazit ikona, kterou jste přidali.