Основи роботи з стрічковим інтерфейсом в MS Access 2010: Початковий рівень, MS Office, Програмні керівництва, статті

Введення


Стрічковий інтерфейс з'явився в пакеті Microsoft Office, починаючи з версії 2007, замінивши звичні меню. Незважаючи на те, що можна було дуже чітко виділити групу людей, яким нововведення не сподобалося, воно стало проривом в інтерфейсі офісних додатків. Люди, які звикли до нового зовнішньому вигляду, підвищували свою швидкодію в рази. Чого вартий хоча б винесення всі елементів форматування осередків у MS Excel в групи на стрічці, використовувати які можна було заповітним "натисканням однієї кнопки", замість виклику окремих настройок в контекстному меню "Форматування комірок".


У версії 2010 не тільки було покращено юзабіліті самої стрічки, а й додано нове подання Backstage ™, яке прийшло на зміну "великій гарній кнопці" з логотипом MS Office. Нове подання відкриває нові горизонти для створення доброзичливого, зручного і повністю визуализированного елемента користувацького меню.


У цій статті ми розглянемо, як можна за допомогою простих дій, не вдаючись до допомоги VBA (і навіть макросів) повністю налаштувати на свій розсуд як саму Стрічку (далі Ribbon), так і уявлення Backstage™.


Підготовка до роботи


Дивно, але мінімальні вимоги обмежуються наявністю встановленої програми MS Access 2010. І це навіть незважаючи на той факт, що змінювати інтерфейс ми будемо за коштами редагування xml коду. Але для більш комфортної роботи з xml можна використовувати додаткові інтерфейси, про яких безсумнівно варто згадати.


Оскільки нам потрібен безпосередньо сам код, то писати його можна навіть в простому Блокноті. Але якщо є бажання скористатися сучасними технологіями і такими зручними елементами як IntelliSense, то можна використовувати будь-який редактор, що підтримує завантаження схем xml (файли у форматі. xsd). Візьмемо, приміром, Visual Studio 2010. Для роботи нам потрібно створити новий файл. Xml (Меню File -> New -> File … -> General -> XML file, див. рис. 1).



Рисунок 1


У нижньому правому куті екрану знайти вікно властивостей Properties. Якщо це вікно відсутній, то його можна викликати натисканням клавіші F4 або за допомогою Меню View -> Properties Window. У вікні необхідно знайти розділ Schemas (див. рис. 2) і, як і в причном MS Access, натиснути кнопку із зображенням трьох крапок.



Рисунок 2


У вікні необхідно знайти цікаву для нас схему і в стовпці Use вибрати пункт Use this schema (див. рис. 3). Файл схеми, використовуваної тільки для Office 2010, називається CustomUI14.xsd. Не плутати його з CustomUI.xsd, який описує роботу з призначеним для користувача інтерфейсом для версії 2007.



Рисунок 3


Якщо ви вирішили скористатися іншим редактором або з якихось причин не знайшли в списку необхідний файл, то його можна завантажити з сайту Microsoft .


Тепер все готово для комфортного написання xml складової. Що стосується Access складової, то тут скористаємося стандартним шаблоном Northwind. Він доступний на вкладці New подання Backstage ™ (Див. рис. 4) у розділі Sample templates (див. рис. 5).



Рисунок 4



Рисунок 5


Постановка завдання наступна:



Налаштування Ribbon


Будь xml код буде починатися з ініціалізації використовуваної схеми. У нашому випадку необхідно вказати:


<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">


</customUI>


Весь код в даному прикладі можна розділити на 2 групи: перша описує налаштування Ribbon і полягає в теги <ribbon> </ ribbon>, друга – настройки подання Backstage ™, теги – <backstage> </ backstage>.


Для тега <ribbon> доступний атрибут startFromScratch. Тип даних – Boolean, тобто приймає значення true / false. При значенні true більшість стандартних елементів інтерфейсу ховається. Зручно в тому випадку, якщо ви хочете повністю змінити меню (часто використовується в серйозних додатках). У нашому випадку ми залишимо цей атрибут із значенням false, але при цьому все-таки в явному вигляді вкажемо навіть ті вкладки (тег <tab> </ tab>), які ми хочемо бачити. Насправді для комфортної роботи користувачеві вистачить вкладки Home, щоб мати доступ до форматування, копіюванню та іншим діям, не відносяться до розробки. Послатися на стандартну вбудовану вкладку ми можемо за допомогою атрибуту idMso. Для більшості вкладок досить додати до їх оригінальною назвою слово Tab і вийде необхідний нам idMso. Винятком у даному випадку є вкладка Home, значення атрибута для якої – TabHomeAccess. Всі існуючі об'єкти, а, відповідно, і значення idMso для них, моно знайти в чудовому файлі, який знаходиться на сайті Microsoft http://www.microsoft.com/downloads/en/details.aspx?FamilyID=3F2FE784-610E-4BF1-8143-41E481993AC6. Щоб приховати непотрібні вкладки, використовуємо атрибут visible зі значенням false. У результаті, щоб приховати всі вкладки, крім Home, необхідний наступний код:


<ribbon startFromScratch=”false”>


  <tabs> 


    <tab idMso=”TabDatasheet” visible=”false” />


    <tab idMso=”TabCreate” visible=”false” />


    <tab idMso=”TabExternalData” visible=”false” />


    <tab idMso=”TabDatabaseTools” visible=”false” />


    <tab idMso=”TabHomeAccess” visible=”true” />


  </tabs> 


</ribbon>


Звернемо увагу, що перед тим, як звернутися безпосередньо до кожної вкладці, необхідно розмістити секцію з тегами <tabs> </ tabs>, вже всередині якої задавати атрибути конкретних вкладкок.


Згадаймо, що на вкладці Home у нас є елемент керування для вибору поточного виду об'єкта (таблиця, дизайн, форма і т.д.). Очевидно, що користувачеві вона не потрібна, тому що його завдання використовувати додаток, а не змінювати. Ця чарівна кнопка розташована в групі Views (групи – це наступний рівень деталізації після вкладок, у кожній групі можуть бути розташовані елементи управління, наприклад, кнопки, що випадають списки і т.д.). Т.к. в цій групі всього 1 кнопка, то досить приховати всю групу, не звертаючись безпосередньо до елементу управління. Для цього усередині секції вкладки TabHomeAccess додамо секцію групи з idMso GroupViews і значенням false атрибута visible:


<tab idMso=”TabHomeAccess” visible=”true”>


  <group idMso=”GroupViews” visible=”false” />


</tab>


Тут вже не будемо явно задавати значення атрибутів для всіх інших груп, тому що неописані групи успадкують значення атрибута visible від свого батьківського елементу вкладки, поки не буде явно вказано зворотне. Це можна було б не робити і для вкладки Home, але тому нам необхідно далі працювати з групою Views всередині цієї вкладки, то позначити її в коді все одно необхідно. Можна не вказувати значення true для атрибута visible, т.к. при виборі значення false атрибута startFromScratch, всі стандарти вкладки за замовчуванням стають видимими. У прикладі атрибут вказаний явно виключно для наочності, щоб показати різницю між приховуваними і видимими об'єктами інтерфейсу.


Налаштування Backstage ™


Якщо уважно вивчити стандартні можливості подання Backstage ™, то можна сміливо залишати користувачеві вкладку для друку документів, вкладку Допомога і кнопку виходу з програми MS Access. Всі опції, пов'язані з налаштуванням, користувачеві не потрібні. Параметри, пов'язані з можливістю відкрити інший файл Access або закрити поточний, ми також приховаємо, це додасть користувачеві відчуття, що він працює в самостійному серйозному додатку.


Важливе зауваження: не існує окремого елемента управління, відповідального за область подання Backstage ™, в якій відображаються останні відкриті файли (див. рис. 6), тому в даному прикладі залишимо цю область без змін. Її настройка вимагає редагування реєстру, що, відповідно, породжує необхідність використовувати VBA і не є завданням початкового рівня.



Малюнок 6


Так само, як і у випадку з налаштуванням Стрічки, ми явно вкажемо, які вкладки (tab) і кнопки (button) ми приховуємо, а які залишаємо видимими.


 <backstage>


  <button idMso=”FileSave” visible=”false”/>


  <button idMso=”SaveObjectAs” visible=”false”/>


<button idMso="FileSaveAsCurrentFileFormat" visible="false"/>


  <button idMso=”FileOpen” visible=”false”/>


  <button idMso=”FileCloseDatabase” visible=”false”/>


  <tab idMso=”TabInfo” visible=”false”/>


  <tab idMso=”TabRecent” visible=”false”/>


  <tab idMso=”TabNew” visible=”false”/>


  <tab idMso=”TabPrint” visible=”true”/>


  <tab idMso=”TabShare” visible=”false”/>


  <tab idMso=”TabHelp” visible=”true”/>


<button idMso="ApplicationOptionsDialog" visible="false"/>


  <button idMso=”FileExit” visible=”true”/>


</backstage>


Варто звернути увагу, що в даному поданні ми можемо відразу безпосередньо звертатися до окремих вкладках або кнопкам без позначення відповідних секцій, типу <tabs> </ tabs>. Як видно із значень атрибутів visible, видимими ми залишили якраз ті вкладки і кнопки, які хотіли.


У підсумку повний код повинен виглядати так:


<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">

  <ribbon startFromScratch=”false”>


    <tabs> 


      <tab idMso=”TabDatasheet” visible=”false” />


      <tab idMso=”TabCreate” visible=”false” />


      <tab idMso=”TabExternalData” visible=”false” />


      <tab idMso=”TabDatabaseTools” visible=”false” />


      <tab idMso=”TabHomeAccess” visible=”true”>


        <group idMso =”GroupViews” visible=”false” />


      </tab> 


    </tabs> 


  </ribbon> 

  <backstage> 


    <button idMso=”FileSave” visible=”false”/>


    <button idMso=”SaveObjectAs” visible=”false”/>


<button idMso="FileSaveAsCurrentFileFormat" visible="false"/>


    <button idMso=”FileOpen” visible=”false”/>


    <button idMso=”FileCloseDatabase” visible=”false”/>


    <tab idMso=”TabInfo” visible=”false”/>


    <tab idMso=”TabRecent” visible=”false”/>


    <tab idMso=”TabNew” visible=”false”/>


    <tab idMso=”TabPrint” visible=”true”/>


    <tab idMso=”TabShare” visible=”false”/>


    <tab idMso=”TabHelp” visible=”true”/>


<button idMso="ApplicationOptionsDialog" visible="false"/>


    <button idMso=”FileExit” visible=”true”/>


  </backstage> 

</customUI>


Прекрасно, файл xml підготовлений, можна зберегти його і приступити до роботи безпосередньо з MS Access.

Завантаження нового інтерфейсу


Існує кілька способів завантаження власного інтерфейсу. Розглянемо найпростіший з них. Відкривши шаблон Northwind (файл. Accdb), створимо нову таблицю. У ній буде 3 поля:













ID


RibbonName


RibbonXML


AutoNumber


Text (255)


Memo



Малюнок 7


Зберігаємо таблицю з ім'ям USysRibbons – це ключовий момент всіх наших дій. Тільки при такому імені існуючі в таблиці коди варіантів інтерфейсу будуть доступні далі безпосередньо в налаштуваннях MS Access.


Тепер додамо одну запис в нашу нову таблицю. У полі RibbonName напишемо, наприклад, MyCustomUI, а в полі RibbonXML вставимо підготовлений раннє код xml.



Малюнок 8


Збережемо і закриємо таблицю. Тепер створимо файл. Accde для подальшого розповсюдження нашим користувачам, але перед тим, як його відправити в production, відкриємо його і застосуємо підготовлений користувача інтерфейс. У результаті для розробки ми будемо мати повний стандартний інтерфейс, а розповсюджуваний файл зможемо обдарувати новим лімітованим інтерфейсом безпосередньо перед самим розповсюдженням. Для цього відкриємо тільки що зроблений файл Northwind.accde, відкриємо подання Backstage ™, натиснувши на кнопку File, виберемо пункт Options (див. рис. 9).



Малюнок 9


У вікні налаштувань перейдемо на вкладку Current Database і знайдемо розділ Ribbon and Toolbar Options. Тепер в спадному списку ви можете побачити створену MyCustomUI (див. рис. 10), яку і необхідно вибрати.



Рисунок 10


Зміни вступлять в силу після перезапуску файлу, про що вас також попередить системне повідомлення (див. рис. 11).



Рисунок 11


Фінальний результат представлений на зображеннях нижче (див. рис. 12 і 13). Ми отримали новий скорочений користувальницький інтерфейс, тепер можна сміливо розраховувати, що користувачі вчинять менше вредосних, хоч і ненавмисних, дій. Тепер ваш додаток виглядає більш авторським, видно, що проведена робота по налаштуванню користувальницького інтерфейсу, що перед вами дійсно додаток, а не просто відкритий в MS Access файл.



Рисунок 12



Рисунок 13

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*