[MS Office 2007] Пользовательский интерфейс Офис2007 (RibbonX UI) - возможности и секреты

Страницы :   Пред.  1, 2, 3, 4, 5, 6  След.
Ответить
 

Krokoz

VIP (Заслуженный)

Стаж: 18 лет

Сообщений: 4159

Krokoz · 07-Ноя-09 16:31 (15 лет 10 месяцев назад)

ogorod007
Есть другой вариант - создать вкладку, полностью дублирующую панель БД и сидеть в ней, как некоторые сидят во вкладке классикА, а БД убрать за ненадобностью.
[Профиль]  [ЛС] 

ogorod007

Стаж: 16 лет 9 месяцев

Сообщений: 65

ogorod007 · 07-Ноя-09 19:34 (спустя 3 часа, ред. 14-Ноя-09 17:57)

так-то оно так
но панелька занимает на 75% меньше места чем лента
но ради спортивного интереса сварганю вкладку аналог, может и понравиться
И кстати прога поддерживает импорт-экспорт настроек (но это отдельная тема для изучения)
продолжение
попробовал заменить свою любимую панель быстрого доступа на настроеную
с помощью этого RibbonCustomizer™ https://rutr.life/forum/viewtopic.php?t=2395833 ленту
и был сильно удивлен, огорчен, но не расстроен
на моей панели кнопки есть трех сортов
1 - просто прямая команда
2 - ниспадающий выбор - у них сбоку маленький треугольник
3 - раскрывающиеся группы команд - эти кнопки имеет другой оттенок фона.
кнопки на панель очень легко набрать через правый клик на кнопках и группах! ленты.
за счет этого на панели можно разместить все команды которые используешь в работе
все под рукой и наглядно (хотя и до нужной команды иногда приходится добираться раскрывая кнопку за кнопкой)
А вот на ленте нельзя разместить раскрывающуюся кнопку-группу команд
например на вкладке ГЛАВНАЯ хотел оставить группы ШРИФТ и АБЗАЦ и добавить самим рожденную группу ВСТАВКА, где разместить кнопки-готовых_групп ИЛЛЮСТРАЦИИ, ТЕКСТ, КОЛОНТИТУЛЫ и т.д. с вкладкиленты ВСТАВКА.
Хрен на рыло только кнопки прямых команд или с треугольником.
А это значит что на одной вкладке себя не удовлетворишь!
А настраивать на себя несколько вкладок каков смысл?
так что пока обойдемся ПБД вот такой
скрытый текст
[Профиль]  [ЛС] 

piv37

Стаж: 16 лет 10 месяцев

Сообщений: 46

piv37 · 21-Ноя-09 13:58 (спустя 13 дней)

ogorod007
Да, хорошо выглядит!
[Профиль]  [ЛС] 

Казунори

Стаж: 17 лет 6 месяцев

Сообщений: 7


Казунори · 01-Дек-09 21:56 (спустя 10 дней, ред. 01-Дек-09 21:56)

Кто нибудь скажите как в Office Word 2007 осуществить команду "Очистить формат"? в старых версиях она была в Формат>Стили и форматирование>Очистить формат . Она очень нужна.
И можно ли как нить убрать большие иконки в ленте, а то очень экран засоряют. Не удобно искать команды.
[Профиль]  [ЛС] 

Krokoz

VIP (Заслуженный)

Стаж: 18 лет

Сообщений: 4159

Krokoz · 01-Дек-09 22:20 (спустя 23 мин.)

Казунори, я уже не говорю, что бы почитать тему, почитай хотя бы шапку.
ЗЫ: Очистить формат - на самом видном месте.
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 03-Дек-09 22:18 (спустя 1 день 23 часа, ред. 03-Дек-09 22:18)

А я себе ленту настроил так
скрытый текст
Это уже 2010, но всё делалось на 2007. Одна вкладка, на которой всё, что нужно в первую очередь для комфортной работы. Кроме того, моё собственное меню для работы с закладками и запуска макросов (группа «Динамические меню»)
Спасибо за Word.qat, я хоть и не пользуюсь панелью быстрого доступа, но полезно знать.
ogorod007 писал(а):
…А вот на ленте нельзя разместить раскрывающуюся кнопку-группу команд
например на вкладке ГЛАВНАЯ хотел оставить группы ШРИФТ и АБЗАЦ и добавить самим рожденную группу ВСТАВКА, где разместить кнопки-готовых_групп ИЛЛЮСТРАЦИИ, ТЕКСТ, КОЛОНТИТУЛЫ и т.д. с вкладкиленты ВСТАВКА.
Хрен на рыло только кнопки прямых команд или с треугольником.
А это значит что на одной вкладке себя не удовлетворишь!
А настраивать на себя несколько вкладок каков смысл?
так что пока обойдемся ПБД вот такой…
Всё можно. У тебя руки растут из правильного места, поэтому могу порекомендовать программу Максима Новикова Ribbon XML Editor, которая на три головы удобнее мелкософтовского детища. Кроме того. есть мой блог, где я на русском и, надеюсь, понятном языке показываю как настроить ленту под себя
[Профиль]  [ЛС] 

Krokoz

VIP (Заслуженный)

Стаж: 18 лет

Сообщений: 4159

Krokoz · 03-Дек-09 23:22 (спустя 1 час 3 мин.)

Александр Витер
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 03-Дек-09 23:59 (спустя 37 мин., ред. 03-Дек-09 23:59)

А в 2010 ещё появился и backstage (который открывается на Файл) и его тоже можно настраивать
Вот так выглядит XML-код моей вкладки (без динамических меню, потому что они привязаны к макросам внутри шаблона) и без вкладки «Утилиты» по той же причине
скрытый текст
Код:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon>
    <tabs>
   <tab idMso="TabReviewWord" visible="false"/>
   <tab idMso="TabMailings" visible="false"/>
   <tab id="__TabMain" label="Основная" insertBeforeMso="TabHome" >
        <group id="__GroupPage" label="Страница">
          <box id="__BoxPage1" boxStyle="horizontal">
            <control idMso="PageSizeGallery" showLabel="false"/>
            <control idMso="PageOrientationGallery" showLabel="false"/>
            <control idMso="PageMarginsGallery" showLabel="false"/>
          </box>
          <box id="__BoxPage2" boxStyle="horizontal">
            <control idMso="ZoomOnePage" showLabel="false"/>
            <control idMso="ZoomTwoPages" showLabel="false"/>
            <control idMso="ZoomPageWidth" showLabel="false"/>
          </box>
          <box id="__BoxPage3" boxStyle="horizontal">
            <control idMso="TableColumnsGallery" showLabel="false"/>
          </box>
          <dialogBoxLauncher>
            <button idMso="PageSetupDialog" />
          </dialogBoxLauncher>
        </group>
        <group id="__GroupFormat" label="Формат">
          <box id="__BoxIndents" boxStyle="horizontal">
            <control idMso="IndentDecreaseWord" />
            <control idMso="IndentIncreaseWord" />
     </box>
     <box id="__BoxSpacings1" boxStyle="horizontal">
      <control idMso="ParagraphSpacingAfter" showLabel="false"/>
     </box>
     <box id="__BoxSpacings2" boxStyle="horizontal">
      <control idMso="ParagraphSpacingBefore" showLabel="false"/>
     </box>
     <separator id="__sep1" />
          <box id="__BoxNumbering" boxStyle="horizontal">
            <control idMso="BulletsGalleryWord" />
            <control idMso="NumberingGalleryWord" />
            <control idMso="MultilevelListGallery" />
      <control idMso="ListLevelGallery" showLabel="false" />
          </box>
          <box id="__BoxAlign" boxStyle="horizontal">
            <control idMso="AlignLeft" />
            <control idMso="AlignCenter" />
            <control idMso="AlignRight" />
            <control idMso="AlignJustify" />
          </box>
     <box id="__BoxStyle" boxStyle="horizontal">
      <control idMso="StylesPane" showLabel="false"/>
      <control idMso="ParagraphMarks" />
     </box>
     <dialogBoxLauncher>
            <button idMso="ParagraphDialog" />
          </dialogBoxLauncher>
        </group>
        <group id="__GroupFont" label="Шрифт">
          <box id="__BoxFontType1" boxStyle="horizontal">
            <control idMso="Font" />
            <control idMso="FontSize" />
            </box>
          <box id="__BoxFontType2" boxStyle="horizontal">
            <control idMso="Bold" />
            <control idMso="Italic" />
            <control idMso="UnderlineGallery" />
            <control idMso="Subscript" />
            <control idMso="Superscript" />
          </box>
          <box id="__BoxFontFormat" boxStyle="horizontal">
            <control idMso="FormatPainter" showLabel="false"  />
            <control idMso="ClearFormatting" />
            <control idMso="ChangeCaseGallery" />
      <control idMso="TextHighlightColorPicker" />
      <control idMso="FontColorPicker" />
          </box>
          <dialogBoxLauncher>
            <button idMso="FontDialog" />
          </dialogBoxLauncher>
        </group>
        <group id="__GroupBorders" label="Границы и таблицы">
          <box id="__BoxBorders1" boxStyle="horizontal">
            <control idMso="BorderNone" showLabel="false" />
            <control idMso="BordersAll" showLabel="false" />
            <control idMso="BorderInside" showLabel="false" />
            <control idMso="BorderOutside" showLabel="false" />
          </box>
          <box id="__BoxBorders2" boxStyle="horizontal">
            <control idMso="BorderBottomWord" showLabel="false" />
            <control idMso="BorderTopWord" showLabel="false" />
            <control idMso="BorderLeftWord" showLabel="false" />
            <control idMso="BorderRightWord" showLabel="false" />
          </box>
          <box id="__BoxBorders3" boxStyle="horizontal">
            <control idMso="BorderInsideHorizontal" showLabel="false" />
            <control idMso="BorderInsideVertical" showLabel="false" />
            <control idMso="BorderDiagonalDown" showLabel="false" />
            <control idMso="BorderDiagonalUp" showLabel="false" />
          </box>
     <separator id="__BoxBordersSep1" />
     <box id="__BoxBorders4" boxStyle="horizontal">
      <control idMso="TableDelete" showLabel="false" />
      <control idMso="TableRowsDelete" showLabel="false" />
      <control idMso="TableColumnsDelete" showLabel="false" />
      <control idMso="CellsDelete" showLabel="false" />
     </box>
     <box id="__BoxBorders5" boxStyle="horizontal">
      <control idMso="TableColumnsInsertLeft" showLabel="false" />
      <control idMso="TableColumnsInsertRight" showLabel="false" />
      <control idMso="TableRowsInsertAboveWord" showLabel="false" />
      <control idMso="TableRowsInsertBelowWord" showLabel="false" />
     </box>
     <box id="__BoxBorders6" boxStyle="horizontal">
      <control idMso="TablePropertiesDialog" showLabel="false" />
      <control idMso="MergeCells" showLabel="false" />
      <control idMso="SplitCells" showLabel="false" />
      <control idMso="TableSplitTable" showLabel="false" />
     </box>
     <separator id="__BoxBordersSep2"/>
     <box id="__BoxBorders7" boxStyle="vertical">
      <control idMso="TableInsertMultidiagonalCell" showLabel="false" />
      <control idMso="TableSelect" showLabel="false" />
      <control idMso="TableShowGridlines" showLabel="false" />
     </box>
     <box id="__BoxBorders8" boxStyle="vertical">
      <control idMso="TableColumnsDistribute" showLabel="false" />
      <control idMso="TableRowsDistribute" showLabel="false" />
      <control idMso="TableRepeatHeaderRows" showLabel="false" />
     </box>
     <separator id="__BoxBordersSep3"/>
     <box id="__BoxBorders9" boxStyle="vertical">
      <control idMso="TableCellAlignTop" showLabel="false" />
      <control idMso="TableCellAlignBottom" showLabel="false" />
      <control idMso="TextDirection" showLabel="false" />
     </box>
     <separator id="__BoxBordersSep4"/>
     <box id="__BoxBorders10" boxStyle="vertical">
      <control idMso="TableCellAlignTopLeft" showLabel="false" />
      <control idMso="TableCellAlignMiddleLeft" showLabel="false" />
      <control idMso="TableCellAlignBottomLeft" showLabel="false" />
     </box>
     <box id="__BoxBorders11" boxStyle="vertical">
      <control idMso="TableCellAlignTopCenter" showLabel="false" />
      <control idMso="TableCellAlignMiddleCenter" showLabel="false" />
      <control idMso="TableCellAlignBottomCenter" showLabel="false" />
     </box>
     <box id="__BoxBorders12" boxStyle="vertical">
      <control idMso="TableCellAlignTopRight" showLabel="false" />
      <control idMso="TableCellAlignMiddleRight" showLabel="false" />
      <control idMso="TableCellAlignBottomRight" showLabel="false" />
     </box>
          <dialogBoxLauncher>
            <button idMso="BordersShadingDialogWord" />
          </dialogBoxLauncher>
        </group>
        <group id="__GroupInsert" label="Вставка">
          <box id="__BoxInsert1" boxStyle="horizontal">
            <control idMso="TableInsertGallery" showLabel="false" />
            <control idMso="TableExcelSpreadsheetInsert" showLabel="false" />
          </box>
          <box id="__BoxInsert2" boxStyle="horizontal">
            <control idMso="PictureInsertFromFile" showLabel="false"/>
            <control idMso="GalleryAllShapesAndCanvas" showLabel="false"/>
          </box>
          <box id="__BoxInsert3" boxStyle="horizontal">
            <control idMso="SymbolInsertGallery" showLabel="false"/>
            <control idMso="EquationInsertNew" showLabel="false"/>
          </box>
          <separator id="__sep" />
          <box id="__BoxInsert4" boxStyle="horizontal">
            <labelControl id="__lcAll" label="Разное:"/>
            <control idMso="BreaksGallery" showLabel="false"/>
            <control idMso="HeaderFooterPageNumberInsert" showLabel="false"/>
            <control idMso="HeaderInsertGallery" showLabel="false"/>
            <control idMso="FooterInsertGallery" showLabel="false"/>
          </box>
          <box id="__BoxInsert5" boxStyle="horizontal">
            <labelControl id="__lcContents" label="Оглавление:"/>
            <control idMso="TableOfContentsGallery" showLabel="false"/>
            <control idMso="TableOfContentsAddTextGallery" showLabel="false"/>
            <control idMso="TableOfContentsUpdate" showLabel="false"/>
          </box>
          <box id="__BoxInsert6" boxStyle="horizontal">
            <labelControl id="__lcFootnote" label="Ссылки:"/>
      <control idMso="BookmarkInsert" showLabel="false"/>
      <control idMso="CaptionInsert" showLabel="false"/>
            <control idMso="CrossReferenceInsert" showLabel="false"/>
            <control idMso="FieldInsert" showLabel="false"/>
          </box>
        </group>
      </tab>
    </tabs>
  </ribbon>
</customUI>
[Профиль]  [ЛС] 

Казунори

Стаж: 17 лет 6 месяцев

Сообщений: 7


Казунори · 04-Дек-09 11:13 (спустя 11 часов)

Новый вид оффиса наверное хорош, но что-бы настроить его под себя всё же слишком много программирования теперь стало. ИМХО совсем обычной пользователь не справится.
[Профиль]  [ЛС] 

ogorod-2

Стаж: 15 лет 9 месяцев

Сообщений: 8

ogorod-2 · 05-Дек-09 09:09 (спустя 21 час, ред. 05-Дек-09 14:27)

Александр Витер
не, такое изобилие кнопок нам не надо, нам хватает и одной строчки ПБД, в крайнем случае можно развернуть ленту
т.к. руки у меня растут откуда положено (из плечей) , глянул на рекомендованную прогу, и при беглом досмотре
Ribbon XML Editor (XML-редактор Ленты) представляет собой редактор пользовательского интерфейса «Лента» программ Word, Excel и PowerPoint из пакета Microsoft Office 2007. Он раскрывает документы любого из вышеперечисленных приложений (форматы docm, docx, dotm, dotx, xlsm, xlsx, xlsb, xltm, xltx, xlam, pptm, pptx, potm, potx, ppsm и ppsx) и внедряет в них сконструированный вами на языке XML интерфейс пользователя (кнопки и другие элемиенты), который отобразится при открытии этого документа вместо стандартного.
т.е. прежде чем открыть чужой документ в своем офисе, мне его надо отрихтовать, что бы получить любимый фейс офиса
Казунори
если добавить - убрать кнопки на панель БД или ленту с помощью других кнопок называется программированием, значит я крутой программер это не про Ribbon XML Editor (XML-редактор Ленты) , там нужно иметь очень богатое воображение
[Профиль]  [ЛС] 

al_gov

Стаж: 16 лет 9 месяцев

Сообщений: 248

al_gov · 05-Дек-09 09:17 (спустя 7 мин.)

Цитата:
т.е. прежде чем открыть чужой документ в своем офисе, мне его надо отрихтовать, что бы получить любимый фейс офиса
Думаю, что это не обязательно.
Можно открыть свой основной рабочий шаблон Normal.dot и внести в него изменения.
В этом случае Ваша измененная лента будет использоваться по умолчанию.
Вот только интересно что будет, если изменения в ленте есть и там и там?
[Профиль]  [ЛС] 

ogorod-2

Стаж: 15 лет 9 месяцев

Сообщений: 8

ogorod-2 · 05-Дек-09 09:29 (спустя 12 мин.)

al_gov
какие люди!
давненько не общались
не уверен тоже, но шаблон Normal.dot для своих новых документов наверное, но могу и ошибаться
[Профиль]  [ЛС] 

al_gov

Стаж: 16 лет 9 месяцев

Сообщений: 248

al_gov · 05-Дек-09 09:56 (спустя 27 мин.)

ogorod-2
да я больше читатель, чем писатель...
тоже не уверен.
но мои давнишние эксперименты показывали (вроде бы), что если пользователь не делает каких-либо изменений в ленте или ПБД, то в файл документа они и не сохраняются, также при этом не сохранется и состояние его оригинальной ленты/ПБД из его шаблона Normal.dot. просто при открытии такого документа на другом компьютере используется лента/ПБД по умолчанию из шаблона Normal.dot этого другого компьютера. но могу и ошибаться.
по поводу ПБД могу сказать точно - если пользователь сделал измененную для себя ПБД и интегрировал её в файл документа, то при его открытии ПБД будет состоять из стандартной ПБД для данного экземпляра Офиса (для Normal.dot) плюс ПБД, итегрированная в документ. Естественно, если либо та, либо другая ПБД будет достаточно "длинной", то некоторые кнопки просто не влезут в одну строку...
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 05-Дек-09 13:58 (спустя 4 часа, ред. 05-Дек-09 13:58)

Все настройки можно сделать и в Normal.dotm, но желательно их делать в другом шаблоне, и подсоединять его как надстройку. Если присоединить несколько надстроек с изменениями ленты, то они как бы наложатся друг на друга.
al_gov писал(а):
ogorod-2
да я больше читатель, чем писатель...
тоже не уверен.
но мои давнишние эксперименты показывали (вроде бы), что если пользователь не делает каких-либо изменений в ленте или ПБД, то в файл документа они и не сохраняются, также при этом не сохранется и состояние его оригинальной ленты/ПБД из его шаблона Normal.dot. просто при открытии такого документа на другом компьютере используется лента/ПБД по умолчанию из шаблона Normal.dot этого другого компьютера. но могу и ошибаться…
Настройки ленты можно сделать в документе, но они будут действительны только для этого документа на любом компьютере. Поэтому, если нужны настройки для всего приложения, то нужно пользоваться надстройками (второе название — глобальный шаблон).
Есть правда один нюанс: если открыть второй экземпляр Word (именно второе приложение, а не ещё один документ), то появляется сообщение, что надстройка с лентой доступна только для чтения. Работать после этого можно, но если работаешь с приложением из другой программы, то это напрягает.
[Профиль]  [ЛС] 

ogorod-2

Стаж: 15 лет 9 месяцев

Сообщений: 8

ogorod-2 · 05-Дек-09 14:57 (спустя 59 мин.)

Александр Витер
как-то все это геморроидально , например зачем кому-то мой интерфейс, если ему нужен только мой документ?
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 05-Дек-09 17:38 (спустя 2 часа 41 мин.)

ogorod-2, никакого геморроя! Неужели ты допускаешь мысль, что я всем даю документы со своим интерфейсом? Я бы сам запарился в каждый документ добавлять код.
Наоборот, всё очень просто:
  1. Один раз делается шаблон. Я потратил на него, учитывая помощь Максима Новикова, около 5 часов. Ещё раз подчеркну, шаблон, а не документ.
  2. Шаблон кладётся в папку Startup, чтобы он загружался автоматически, либо в любую другую папку, но его придётся указать Word'у вручную(вкладка «Разработчик»→кнопка «Шаблон»)
  3. После этого настроенная лента доступна для любых документов, кроме режима запуска Word'а с ключом /a
[Профиль]  [ЛС] 

ogorod-2

Стаж: 15 лет 9 месяцев

Сообщений: 8

ogorod-2 · 05-Дек-09 18:51 (спустя 1 час 13 мин., ред. 05-Дек-09 18:51)

Александр Витер
так тот скрин офиса2010 чем делался, родным настройщиком или Ribbon XML Editor?
Если с родным настройщиком и его прородителем RibbonCustomizer™ более менее сразу все ясно и наглядно (возможно функционально и ограничено), то с Ribbon XML Editor, как говориться, сразу без бутылки не разберешься
Мне она напомнила первые редакторы вебстраниц, наглядность равна нулю
не для нас ламеров
Цитата:
Данный русскоязычный редактор является продвинутой альтернативой простенькой англоязычной утилите Office 2007 Custom UI Editor, которая до сей поры являлась единственной, предназначенной для этой цели.
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 05-Дек-09 20:26 (спустя 1 час 34 мин.)

ОН делался с помощью Ribbon XML Editor два года назад для Word 2007. И с тех пор только совершенствовался.
Какой родной настройщик имеется ввиду? В 2007-м его не было. Есть только программка Office 2007 Custom UI Editor, в которой хорошего только то, что она умеет генерировать callback'и
RibbonCustomizer™ совершенно сторонняя программа, которую я поставил и через 2 часа удалил, поскольку она, как ты заметил, очень ограничена в своих возможностях.
[Профиль]  [ЛС] 

ogorod-2

Стаж: 15 лет 9 месяцев

Сообщений: 8

ogorod-2 · 05-Дек-09 20:55 (спустя 29 мин.)

Глядел на картинку, там 2010 ( а у него родной). а текст под ней про 2007 как то в мозгу не отметился
RibbonCustomizer™ ограничена, но понятна.
А к Ribbon XML Editor без специальной подготовки лучше не соваться.
Я понимаю что халява, т.е. даром, но справка в проге это не руководство к действию, а обычная аннотация
маленькое лирическое отступление
скрытый текст
Здравствуй милая девица,
Коль опять тебе не спится
Вот те в руки звиздалет,
Отправляйся-ка в полет.
Ну и что, что не летала.
Как же ты меня достала.
То лицом тебе не гож,
То к барыгам я не вхож.
Полетаешь там немного,
Мож забудешь к нам дорогу.
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 05-Дек-09 21:45 (спустя 49 мин., ред. 06-Дек-09 01:07)

ogorod-2 писал(а):
справка в проге это не руководство к действию, а обычная аннотация
Всё достаточно подробно изложено на сайте. Для начала хватит:)
Про «звиздалёт» это намёк?
ogorod-2 писал(а):
…RibbonCustomizer™ ограничена, но понятна.
Так вам «шашечки» или ехать? Если человеку нужен результат, то ознакомиться с кратким вводным курсом совсем не сложно.
[Профиль]  [ЛС] 

Krokoz

VIP (Заслуженный)

Стаж: 18 лет

Сообщений: 4159

Krokoz · 06-Дек-09 16:17 (спустя 18 часов)

Александр Витер писал(а):
Так вам «шашечки» или ехать?
Ехать
Александр Витер писал(а):
ознакомиться с кратким вводным курсом совсем не сложно.
А вот изучать устройство машины, на которой ехать, как то не хочется. Зачем?
[Профиль]  [ЛС] 

ogorod-2

Стаж: 15 лет 9 месяцев

Сообщений: 8

ogorod-2 · 06-Дек-09 18:28 (спустя 2 часа 11 мин.)

Александр Витер
я внимательно ознакомился с сайтом разработчика (когда я попробовал до этого прогу, у меня на ум пришла сразу два слова: линукс и перл), понял что эти два слова пришли ко мне не случайно. автор действительно талантливый и хороший программист, но
Цитата:
всё достаточно подробно изложено на сайте. Для начала хватит:)
это не совсем верно.
Цитата:
Всё можно. У тебя руки растут из правильного места, поэтому могу порекомендовать программу Максима Новикова Ribbon XML Editor, которая на три головы удобнее мелкософтовского детища. Кроме того. есть мой блог, где я на русском и, надеюсь, понятном языке показываю как настроить ленту под себя
а уж когда я заглянул к Вам в блог, что бы посмотреть как на понятном языке Вы показываете как настроить ленту с помощью данной проги, обнаружил там только эту фразу:
Цитата:
Возникает вопрос: как все это получилось?
Само создание панели инструментов на ленте не представляет особой сложности и довольно подробно рассмотрено на уже упомянутом сайте Максима Новикова.
Охренеть как понятно, разве что правда на русском
а что касается звиздалета и дороги сюда - это касается проги, результатом которой явилась фраза несколькими постами выше
Цитата:
Новый вид оффиса наверное хорош, но что-бы настроить его под себя всё же слишком много программирования теперь стало. ИМХО совсем обычной пользователь не справится.
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 06-Дек-09 22:50 (спустя 4 часа)

Странно, мне казалось, что и у Максима и у меня всё доходчиво написано.
Что ж, спасибо за критику. Учту и дополню свой блог азами: буду выборочно переводить книгу «RibbonX. Customizing the Office 2007 Ribbon», Robert Martin, Ken Puls, Teresa Hennig
Под мелкософтовским детищем я имел ввиду Office 2007 Custom UI Editor
[Профиль]  [ЛС] 

ogorod-2

Стаж: 15 лет 9 месяцев

Сообщений: 8

ogorod-2 · 07-Дек-09 00:18 (спустя 1 час 27 мин.)

Александр Витер
зачем, уважаемый, переводить чужие книжки непонятно на что.
И что бы казалось не только Вам,
Вы покажите (научите нас лузеров) здесь, как с помощью этой проги, добавить вкладку, кнопки на конкретном примере. Мы Вам все спасибо скажем.
а то слова, слова, слова
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 07-Дек-09 15:35 (спустя 15 часов, ред. 07-Дек-09 15:35)

Книжку я буду переводить для блога. Это полезно. И не всю, а только азы.
Конкретный пример с кодом всей ленты я выложил выше.
Теперь пошагово. Прежде чем приступать к экспериментам, нужно зайти в «Параметры»→«Дополнительно» и в самом низу страницы найти и отметить пункт «Показывать ошибки интерфейса пользователя надстроек».
    [*]Запускаем программу Ribbon XML Editor
    [*]Открываем любой документ формата docx, docm, dotx,dotm(первая кнопка на панели инструментов или Ctrl+O). Для начала рекомендую потренироваться на документе, а к шаблонам приступать позже. Документ желательно закрыть в Word. Пока что XML-схема документа пустая.
    [*]Начинаем формировать ленту.
    Как и любой XML-документ она формируется, начиная с корневого элемента. Корневым является элемент customUI, имеющий такой код
    Код:
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    </customUI>
    Можно его вписать вручную, а можно кнопкой на панели инструментов слева.
    [*]Следующий элемент, это ribbon— собственно цель наших настроек. Он вставляется внутрь корневого элемента customUI
    Код:
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon startFromScratch="false">
    </ribbon>
    </customUI>
    Код этого элемента тоже можно вписать или вручную, или кнопкой . Этот элемент имеет аттрибут startfFromScratch, который позволяет полностью скрыть встроенные элементы ленты, которые Microsoft создала с таким трудом. Пока что оставим его в значении false.
    [*]Следующим элементом, вложенным в ribbon, является tabs— контейнер для всех вкладок на ленте. Добавляем и его кнопкой . При этом сразу создаются дочерние элементы, без которых элемент tabsникак не обойдётся: tabи group.
    Код:
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon startFromScratch="false">
      <tabs>
       <tab id="_mytab1" label="Моя первая вкладка">
        <group id="_mytab1_gr1" label="Моя первая группа">
        </group>
       </tab>
      </tabs>
    </ribbon>
    </customUI>
    Аттрибуты idи labelдля вкладки и группы нужно вписать вручную. Само собой разумеется, что idдолжны быть уникальными.
    [*]Теперь внутри группы можно размещать элементы. Для примера добавим стандартную кнопку выбора ориентации страницы. Все стандартные элементы добавляются элементом control(кнопка )
    Код:
    <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
    <ribbon startFromScratch="false">
      <tabs>
       <tab id="" label="">
        <group id="" label="">
         <control idMso="PageOrientationGallery" />
        </group>
       </tab>
      </tabs>
    </ribbon>
    </customUI>
    Документ сохраняем и открываем его в Word. Видим, что появилась ещё одна вкладка с нашим именем, на вкладке появилась группа, а в группе кнопка для выбора ориентации страницы.
      На этом пока всё. Любые вопросы приветствуются. С удовольствием поясню.
      Added:
      Названия стандартных элементов управления можно узнать, если зайти в диалог настройки ленты или ПБД и навести мышь на интересующий элемент. Во всплывающей подсказке последним будет название этого элемента.

      Также названия всех элементов для Office 2007 можно найти в этомархиве
[Профиль]  [ЛС] 

ogorod-2

Стаж: 15 лет 9 месяцев

Сообщений: 8

ogorod-2 · 07-Дек-09 19:46 (спустя 4 часа, ред. 07-Дек-09 21:10)

Вот, это уже что-то.
на беглый взгляд есть небольшие замечания требующие пояснения,+ жуткое неудобство в работе по поиску названия нужной кнопки, посмотрим насколько функционально возможно создать например аналог вкладки "шрифт" или "абзац", т.е. кнопки расположить так же рядом в смысловых мини-группах (в рибоне кустомизере просто набор разрозненных кнопок, которые располагаются друг за дружкой, а не как хотелось бы их видеть- хотя если смотреть на приведенную Вашу вкладку - такая же хрень) + возможность размещать кнопку-группу в группе.
проблемы с инетом решил, займемся делом
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 07-Дек-09 20:55 (спустя 1 час 8 мин., ред. 08-Дек-09 12:56)

Дабы не мусорить словами, задавай конкретные вопросы
Added:
Продолжим, пожалуй
Я расскажу, как расположить нужные элементы в смысловых минигруппах.
Группировка элементов управления на ленте
Попробуем создать вот такую группу: Если делать так, как излагалось ранее, просто прописывая нужные элементы управления, то получим нечто совершенно невообразимое:
XML-код
Код:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon>
    <tabs>
   <tab id="_TabMain" label="Основная" insertBeforeMso="TabHome" >
        <group id="_TabMain_grFont" label="Шрифт">
     <!--Список выбора гарнитуры шрифта-->
     <control idMso="Font" />
     <!--Список выбора размера шрифта-->
     <control idMso="FontSize" />
     <!--Кнопка жирности шрифта-->
     <control idMso="Bold" />
     <!--Кнопка наклонности шрифта-->
     <control idMso="Italic" />
     <!--Список выбора типа подчеркивания для шрифта-->
     <control idMso="UnderlineGallery" />
     <!--Кнопка нижнего индекса-->
     <control idMso="Subscript" />
     <!--Кнопка верхнего индекса-->
     <control idMso="Superscript" />
     <!--Кнопка форматирования по образцу-->
     <control idMso="FormatPainter" showLabel="false"  />
     <!--Кнопка очистки форматирования-->
     <control idMso="ClearFormatting" />
     <!--Список изменения регистра-->
     <control idMso="ChangeCaseGallery" />
     <!--Цвет выделения-->
     <control idMso="TextHighlightColorPicker" />
     <!--Цвет шрифта-->
     <control idMso="FontColorPicker" />
          <!--Маленький квадратик в углу группы для вызова дилогового окна настройки шрифта-->
     <dialogBoxLauncher>
            <button idMso="FontDialog" />
          </dialogBoxLauncher>
        </group>
   </tab>
    </tabs>
  </ribbon>
</customUI>

Сразу отмечу, что XML-код можно комментировать точно так же, как и html: <!--Текст комментария-->. У вкладки я определил аттрибут insertBeforeMso, который указывает после какой стандартной вкладки нужно расположить эту.
Итак, полученный результат никак не может нас удовлетворить, но даёт кое-какую ценную информацию, а именно:
  1. Элементы управления располагаются слева-направо и сверху-вниз.
  2. На ленте элементы управления можно разместить не более чем в три строки
Запомним это и пойдём дальше.
Для формирования смысловых групп и расположения элементов управления в нужном порядке имеется специальный элемент box . У него есть аттрибут boxStyle, определяющий порядок размещения элементов управления. Этот аттрибут может принимать два значения: "vertical" и "horizontal"
Согласно требуемому расположению, нужно списки выбора гарнитуры и размера шрифта расположить горизонтально. Для этого вставляем элемент box внутрь группы, задаём ему аттрибуты id и boxStyle и переносим в него списки выбора гарнитуры и размера шрифта:
XML-код
Код:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon>
    <tabs>
   <tab id="_TabMain" label="Основная" insertBeforeMso="TabHome" >
        <group id="_TabMain_grFont" label="Шрифт">
     <box id="grFont_box1" boxStyle="horizontal">
      <!--Список выбора гарнитуры шрифта-->
      <control idMso="Font" />
      <!--Список выбора размера шрифта-->
      <control idMso="FontSize" />
     </box>
     <!--Кнопка жирности шрифта-->
     <control idMso="Bold" />
     <!--Кнопка наклонности шрифта-->
     <control idMso="Italic" />
     <!--Список выбора типа подчеркивания для шрифта-->
     <control idMso="UnderlineGallery" />
     <!--Кнопка нижнего индекса-->
     <control idMso="Subscript" />
     <!--Кнопка верхнего индекса-->
     <control idMso="Superscript" />
     <!--Кнопка форматирования по образцу-->
     <control idMso="FormatPainter" showLabel="false"  />
     <!--Кнопка очистки форматирования-->
     <control idMso="ClearFormatting" />
     <!--Список изменения регистра-->
     <control idMso="ChangeCaseGallery" />
     <!--Цвет выделения-->
     <control idMso="TextHighlightColorPicker" />
     <!--Цвет шрифта-->
     <control idMso="FontColorPicker" />
          <!--Маленький квадратик в углу группы для вызова дилогового окна настройки шрифта-->
     <dialogBoxLauncher>
            <button idMso="FontDialog" />
          </dialogBoxLauncher>
        </group>
   </tab>
    </tabs>
  </ribbon>
</customUI>

Как видим, списки выбора гарнитуры и размера шрифта расположились горизонтально. Осталось продумать и прописать расположение остальных элементов уравления:
XML-код
Код:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
  <ribbon>
    <tabs>
   <tab id="_TabMain" label="Основная" insertBeforeMso="TabHome" >
        <group id="_TabMain_grFont" label="Шрифт">
          <box id="_grFont_box1" boxStyle="horizontal">
            <!--Список выбора гарнитуры шрифта-->
      <control idMso="Font" />
      <!--Список выбора размера шрифта-->
            <control idMso="FontSize" />
          </box>
          <box id="_grFont_box2" boxStyle="horizontal">
      <!--Кнопка жирности шрифта-->
            <control idMso="Bold" />
      <!--Кнопка наклонности шрифта-->
            <control idMso="Italic" />
      <!--Список выбора типа подчеркивания для шрифта-->
            <control idMso="UnderlineGallery" />
      <!--Кнопка нижнего индекса-->
            <control idMso="Subscript" />
      <!--Кнопка верхнего индекса-->
            <control idMso="Superscript" />
          </box>
          <box id="_grFont_box3" boxStyle="horizontal">
      <!--Кнопка форматирования по образцу-->
            <control idMso="FormatPainter" showLabel="false"  />
            <!--Кнопка очистки форматирования-->
      <control idMso="ClearFormatting" />
      <!--Список изменения регистра-->
            <control idMso="ChangeCaseGallery" />
      <!--Цвет выделения-->
      <control idMso="TextHighlightColorPicker" />
      <!--Цвет шрифта-->
      <control idMso="FontColorPicker" />
          </box>
          <!--Маленький квадратик в углу группы для вызова дилогового окна настройки шрифта-->
          <dialogBoxLauncher>
            <button idMso="FontDialog" />
          </dialogBoxLauncher>
        </group>
   </tab>
    </tabs>
  </ribbon>
</customUI>

Элементы box могут быть вложенными друг в друга, что позволяет очень гибко настраивать расположение элементов управления. Экспериментируйте и всё получится.
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 11-Дек-09 17:13 (спустя 3 дня)

Странно, одна и та же группа в 2007 и 2010 отображается по-разному:
2007

2010

Кроме того, что в 2010 группа полностью помещается на ленту, почему текстовое поле выровнялось по правому краю?
[Профиль]  [ЛС] 

Аналитика

Стаж: 16 лет 9 месяцев

Сообщений: 16


Аналитика · 23-Дек-09 13:27 (спустя 11 дней)

Александр Витер
Добрый день!
Два вопроса знатокам: 1. можно ли сделать enabled="false" для чекбокса в параметрах Excel 2007 (т.е. заблокировать какую-то опцию) и, вообще, что-то там поменять;
2. можно ли на ленте создать чекбокс, при нажатии на к-рый менялось бы свойство (напр. enabled) другого элемента на ленте, т.е. галочка стоит - кнопка рядом доступна, не стоит - не доступна?
Еще момент - не могу понять, как использовать свойства, начинающиеся с get... (напр. getImageMso), подскажите... (в вопросе 2. как раз и хотел замутить с getPressed, но все это плачевно как-то завершилось)
[Профиль]  [ЛС] 

Александр Витер

Стаж: 16 лет 9 месяцев

Сообщений: 212

Александр Витер · 23-Дек-09 16:32 (спустя 3 часа, ред. 23-Дек-09 16:32)

  1. В принципе можно, переопределив команду.
  2. Можно
  3. Всё, что начинается с get — это процедуры, необходимые для установки или получения параметров элементов управления во время работы. Т.е. процедура getImageMso позволяет назначить для элемента управления стандартный значок, getPressed — определить отмечен ли флажок, getLabel — задать текст элемента управления и т.д.
Но всё это требует знания VBA. Не особенно глубокого, но основательного
[Профиль]  [ЛС] 
 
Ответить
Loading...
Error