Dodawanie ikon do poleceń menu
Polecenia mogą być wyświetlane zarówno w menu, jak i na paskach narzędzi. Na paskach narzędzi często jest wyświetlane polecenie z tylko ikoną (aby zaoszczędzić miejsce), podczas gdy w menu polecenie jest zwykle wyświetlane z ikoną i tekstem.
Ikony mają szerokość 16 pikseli o wysokości 16 pikseli i mogą mieć głębokość koloru 8-bitowego (256 kolorów) lub 32-bitową głębokość koloru (true color). Preferowane są ikony kolorów 32-bitowych. Ikony są zwykle rozmieszczone w jednym poziomie wiersza w jednej mapie bitowej, chociaż dozwolone jest wiele map bitowych. Ta mapa bitowa jest zadeklarowana w pliku vsct wraz z poszczególnymi ikonami dostępnymi na mapie bitowej. Aby uzyskać więcej informacji, zobacz dokumentację elementu Mapy bitowe.
Dodawanie ikony do polecenia
Poniższa procedura zakłada, że masz istniejący projekt VSPackage z poleceniem menu. Aby dowiedzieć się, jak to zrobić, zobacz Tworzenie rozszerzenia za pomocą polecenia menu.
Utwórz mapę bitową z głębokością kolorów 32-bitową. Ikona jest zawsze 16 x 16, więc mapa bitowa musi mieć szerokość 16 pikseli i wielokrotność 16 pikseli.
Każda ikona jest umieszczana na mapie bitowej obok siebie w jednym wierszu. Użyj kanału alfa, aby wskazać miejsca przezroczystości w każdej ikonie.
Jeśli używasz głębokości koloru 8-bitowego, użyj magenta,
RGB(255,0,255)
, jako przezroczystości. Jednak preferowane są ikony kolorów 32-bitowych.Skopiuj plik ikony do katalogu Resources w projekcie VSPackage. W Eksplorator rozwiązań dodaj ikonę do projektu. (Wybierz Zasoby, a następnie w menu kontekstowym kliknij przycisk Dodaj, a następnie pozycję Istniejący element i wybierz plik ikony.
Otwórz plik vsct w edytorze.
GuidSymbol
Dodaj element o nazwie testIcon. Utwórz identyfikator GUID (Narzędzia>Utwórz identyfikator GUID, a następnie wybierz pozycję Format rejestru i kliknij przycisk Kopiuj) i wklej go do atrybutu.value
Wynik powinien wyglądać następująco:<!-- Create your own GUID --> <GuidSymbol name="testIcon" value="{00000000-0000-0000-0000-0000}">
Dodaj element
<IDSymbol>
dla ikony. Atrybutname
jest identyfikatorem ikony ivalue
wskazuje jego położenie na pasku, jeśli istnieje. Jeśli jest tylko jedna ikona, dodaj 1. Wynik powinien wyglądać następująco:<!-- Create your own GUID --> <GuidSymbol name="testIcon" value="{00000000-0000-0000-0000-0000}"> <IDSymbol name="testIcon1" value="1" /> </GuidSymbol>
Utwórz element
<Bitmap>
w<Bitmaps>
sekcji w<Commands>
sekcji pliku vsct , aby reprezentować mapę bitową zawierającą ikony.guid
Ustaw wartość na nazwę<GuidSymbol>
elementu utworzonego w poprzednim kroku.href
Ustaw wartość na ścieżkę względną pliku mapy bitowej (w tym przypadku nazwa> pliku Resources\<icon.usedList
Ustaw wartość na utworzony wcześniej identyfikator IDSymbol. Ten atrybut określa rozdzielaną przecinkami listę ikon, które mają być używane w programie VSPackage. Ikony, które nie znajdują się na liście, są wykluczone kompilacji formularzy.Blok Mapy bitowej powinien wyglądać następująco:
<Bitmap guid="testIcon" href="Resources\<icon file name>" usedList="testIcon1"/>
W istniejącym
<Button>
elemenie ustawIcon
element na utworzone wcześniej wartości GUIDSymbol i IDSymbol. Oto przykład elementu Button z tymi wartościami:<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>
Przetestuj ikonę. Skompiluj projekt i rozpocznij debugowanie. W wystąpieniu eksperymentalnym znajdź polecenie . Powinna zostać wyświetlona dodana ikona.