Aracılığıyla paylaş


Menü öğesi

Bir menü öğesi tanımlar. Bunlar altı tür menüdür: Context, Menu, MenuController, MenuControllerLatched, Toolbar ve ToolWindowToolbar.

Sözdizimi

<Menu guid="guidMyCommandSet" id="MyCommand" priority="0x100" type="button">
  <Parent>... </Parent>
  <CommandFlag>... </CommandFlag>
  <Strings>... </Strings>
</Menu>

Öznitelikler ve öğeler

Öznitelikler, alt ve üst öğeler aşağıdaki bölümlerde açıklanmaktadır.

Özellikler

Öznitelik Açıklama
guid Gerekli. GUID/ID komut tanımlayıcısının GUID'si.
id Gerekli. GUID/ID komut tanımlayıcısının kimliği.
Öncelik isteğe bağlı. Menü grubundaki bir menünün göreli konumunu belirten sayısal değer.
toolbarPriorityInBand isteğe bağlı. Pencere yerleştirildiğinde banttaki bir araç çubuğunun göreli konumunu belirten sayısal değer.
Tür isteğe bağlı. Öğe türünü belirten numaralandırılmış değer.

Yoksa, varsayılan tür Menü'dür.

Bağlam
Kullanıcı bir pencereye sağ tıkladığında gösterilen kısayol menüsü. Kısayol menüsü aşağıdaki özelliklere sahiptir:

- Menü kısayol menüsü olarak görüntülendiğinde Üst ve Öncelik alanlarını kullanmaz.
- Hem alt menü hem de kısayol menüsü olarak kullanılabilir. Bu durumda, hem Grup Kimliği hem de Öncelik alanları dikkate alır.
- Her zaman kullanılamaz.

Kısayol menüsü yalnızca aşağıdaki koşullar doğru olduğunda görüntülenir:

- Onu barındıran pencere görüntülenir.
- VSPackage'daki bir fare işleyicisi pencereye sağ tıklama algılar ve ardından komutu işleyen bir yöntemi çağırır.
- Kısayol menüsü yöntemi (önerilen yaklaşım) veya yöntemi çağrılarak ShowContextMenu ShowContextMenu görüntülenir.

Menü
Bir açılan menü sağlar. Açılan menü aşağıdaki özelliklere sahiptir:

- Ebeveyni tanımında dikkate alır.
- Bir Üst grup veya bir grup için CommandPlacement olmalıdır.
- Diğer menü türlerinde bir alt menü olabilir.
- Üst menüsü her görüntülendiğinde otomatik olarak görüntülenir.
- Görüntülenmesi için herhangi bir VSPackage kodunun uygulanmasını gerektirmez.

MenuController
Genellikle araç çubuklarında kullanılan bölünmüş düğme açılan menüsü sağlar. MenuController menüsü aşağıdaki özelliklere sahiptir:

- Üst veya CommandPlacement aracılığıyla başka bir menüde yer almalıdır.
- Ebeveyni tanımında dikkate alır.
- Ebeveyni olarak her türlü menüye sahip olabilir.
- Üst menüsü her görüntülendiğinde otomatik olarak kullanılabilir duruma getirilir.
- Menüyü görüntülemek için programlı destek gerektirmez.

Menü düğmesinde bölünmüş düğme menüsünden bir komut görüntülenir. Görüntülenen komut aşağıdaki özelliklerden birine sahiptir:

- Komut hala görüntülenip etkinse kullanılan son komuttu.
- Görüntülenen ilk komut.

MenuControllerLatched
Komutu mandallı olarak işaretleyerek varsayılan seçim olarak belirtilebilen bir bölünmüş düğme açılan menüsü sağlar.

Mandallı komut, menüde seçili olarak işaretlenen bir komutdur ve genellikle onay işareti görüntülenir. Bir komut, arabiriminin yönteminin IOleCommandTarget bir uygulamasında QueryStatus OLECMDF_LATCHED bayrağı ayarlanmışsa, mandallı olarak işaretlenebilir. MenuControllerLatched menüsü aşağıdaki özelliklere sahiptir:

- Üst grup veya CommandPlacement aracılığıyla başka bir menüde yer almalıdır.
- Ebeveyni tanımında dikkate alır.
- Ebeveyni olarak her türlü menüye sahip olabilir.
- Üst menüsü her görüntülendiğinde kullanılabilir duruma getirilir.
- Menüyü görüntülemek için programlı destek gerektirmez.

Menü düğmesinde bölünmüş düğme menüsünden bir komut görüntülenir. Görüntülenen komut aşağıdaki özelliklerden birine sahiptir:

- Bu, mandallı ilk görüntülenen komut.
- Görüntülenen ilk komut.

Araç Çubuğu
Bir araç çubuğu sağlar. Araç çubuğu aşağıdaki özelliklere sahiptir:

- Üst öğeyi tanımında yoksayar.
- CommandPlacement kullanılarak bile hiçbir grubun alt menüsü yapılamaz.
- Görünüm menüsünde Araç Çubukları'na tıklayarak her zaman görüntülenebilir.
- VisibilityItem kullanılarak görüntülenebilir.
- Oluşturmak için herhangi bir kod gerektirmez. Araç çubuğu oluşturma hakkında bir örnek için bkz . Araç çubuğu ekleme.

ToolWindowToolbar
Bir araç çubuğunun geliştirme ortamına bağlı olduğu gibi, belirli bir araç penceresine eklenmiş bir araç çubuğu sağlar.

- Üst öğeyi tanımında yoksayar.
- CommandPlacement kullanılarak bile hiçbir grubun alt menüsü yapılamaz.
- Yalnızca araç çubuğunu barındıran araç penceresi görüntülendiğinde ve VSPackage araç çubuğunu araç penceresine açıkça eklediğinde görüntülenir. Bu genellikle araç penceresi araç penceresi çerçevesinden araç konağı özelliği (arabirim tarafından IVsToolWindowToolbarHost gösterildiği gibi) alınıp yöntemini çağırarak AddToolbar araç penceresi oluşturulduğunda gerçekleştirilir.
Koşul isteğe bağlı. Bkz. Koşullu öznitelikler.

Alt öğeleri

Öğe Açıklama
Parent isteğe bağlı. Menü öğesinin üst öğesi.
CommandFlag Gerekli. Bkz. Command flag öğesi. Menü için geçerli CommandFlag değerleri aşağıdaki gibidir:

- AlwaysCreate
- DefaultDocked
- DefaultInvisible - Bu bayrak araç çubuklarının görüntülenmesini etkilemez.
- DontCache
- DynamicVisibility - Bu bayrak araç çubuklarının görüntülenmesini etkilemez.
- IconAndText
- NoCustomize
- NotInTBList
- NoToolbarClose
- TextChanges
- TextIsAnchorCommand
Dizeler Gerekli. Bkz. Strings öğesi. Alt ButtonText öğe tanımlanmalıdır.
Annotation İsteğe bağlı açıklama.

Üst öğeler

Öğe Açıklama
Menus öğesi VSPackage'ın uyguladığı tüm menüleri tanımlar.

Örnek

<Menu guid="cmdGuidWidgetCommands" id="menuIDEditWidget"
  priority="0x0002" type="Menu">
  <Parent guid="cmdSetGuidWidgetCommands" id="groupIDFileEdit"/>
  <CommandFlag>AlwaysCreate</CommandFlag>
  <Strings>
    <ButtonText>Edit Widget</ButtonText>
  </Strings>
</Menu>

Ayrıca bkz.