1

Тема: Создание собственной вкладки на ленте

Пытаюсь сделать свою вкладку и не пойму каким образом происходит сортировка кнопок в группах.
Вот например если сделать так:
Создание собственной вкладки на ленте
то первые 3 кнопки большие
А если вот так:
Создание собственной вкладки на ленте
или вот так
Создание собственной вкладки на ленте
то они уже сложились в ряд.
Можно как-то уследить этот процесс? Т.е. понять когда они сложатся в ряд, а когда будут большими?

2

Re: Создание собственной вкладки на ленте

У кнопки есть статический атрибут size, который может принимать значение large или normal. Атрибут не обязательный и, если он не указан, то система подбирает размер кнопки автоматически так, чтобы максимально заполнить пространство в группе.
Также имеется элемент box — контейнер предназначенный для упорядочивания других элементов управления. У него ключевой аргумент и, по-моему, единственный, это boxStyle, принимающий значения vertical или horizontal. Соответственно элементы, находящиеся в таком контейнере будут всегда располагаться или вертикально (но не более трёх в столбце) или горизонтально.
Пример такой ленты:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
   <ribbon startFromScratch="false">
      <tabs>
         <tab id="mytab" label="Моя вкладка">
            <!-- Эти кнопки всегда будут большими -->
            <group id="gr1" label="Файл">
               <button idMso="FileOpen"
                           size="large"/>
               <button idMso="FileSave"
                           size="large"/>
               <button idMso="FileSaveAs"
                           size="large"/>
            </group>
            <!-- Эти кнопки всегда будут маленькими -->
            <group id="gr2" label="Файл1">
               <button idMso="FileOpen"
                           size="normal"/>
               <button idMso="FileSave"
                           size="normal"/>
               <button idMso="FileSaveAs"
                           size="normal"/>
            </group>
            <!-- Эти кнопки тоже всегда будут маленькими -->
            <group id="gr3" label="Файл2">
              <box id="gr1_box1" boxStyle="vertical">
                  <button idMso="FileOpen"/>
                  <button idMso="FileSave"/>
                  <button idMso="FileSaveAs"/>               
               </box>
            </group>
         </tab>
      </tabs>      
   </ribbon>
</customUI>

Создание собственной вкладки на ленте
Это всё верно для 2007 и отчасти для 2010-го. Отчасти, потому что в 2010-м появились дополнительные параметры, с которыми я не работал. В Ribbox XML Editor в списке значений можно ознакомиться со всеми вариантами:
Создание собственной вкладки на ленте

Лучше день потерять — потом за пять минут долететь!

3

Re: Создание собственной вкладки на ленте

Все понял, кроме одного: где редактировать этот файл с кодом?

4

Re: Создание собственной вкладки на ленте

Гм, а как ты до этого кнопки на ленту помещал?

Лучше день потерять — потом за пять минут долететь!

5

Re: Создание собственной вкладки на ленте

viter.alex пишет:

Гм, а как ты до этого кнопки на ленту помещал?

Просто в настройках smile Управление лентой. Все через интерфейс.

6

Re: Создание собственной вкладки на ленте

viter.alex пишет:

Гм, а как ты до этого кнопки на ленту помещал?

Алекс, это в 2010. Там это стандартная процедура smile

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

7

Re: Создание собственной вкладки на ленте

Я знаю, что стандартная процедура. Но она такая куцая, что я даже не допускал возможности её использования.
Route, воспользуйся поиском по слову ribbon на wordexpert. Там есть информация о настройке ленты другим способом. А также мой блог

Лучше день потерять — потом за пять минут долететь!