<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl"  href="/xslt/final.xslt"?><html>
  <head>
    <title>6.2 ExtJS: Инструментальные панели. Часть 2. Меню (Ext.menu.Menu)</title>
    <meta name="css" content="/doc/ext/ext_examples.css"/>
    <meta name="js" content="/js/EXT4/ext-all.js;/doc/ext/360.js"/>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta name="id" content="50"/>
    <link rel="stylesheet" type="text/css" href="/doc/ext/ext_examples.css"/>
    <link rel="alternate" type="application/rss+xml" title="RSS" href="/rss.xml"/>
  </head>
  <body>
    <div class="main">
      <div class="wrap">
        <div class="L">
          <h1><a href="/">..</a> / 6.2 ExtJS: Инструментальные панели. Часть 2. Меню (Ext.menu.Menu)</h1>
          <ol class="tags big">
            <li>
              <a href="/ExtJS-4">ExtJS-4</a>
            </li>
          </ol>
          <div class="myContent"><h3>
   1. простое меню
</h3>
<p>
  Для больших приложений, обычно кнопки в верхней инструментальной
  панели совмещены с выпадающими меню. Пример такой кнопки-меню
  приведен ниже
</p>
<p>
  <button onclick="win1.show()">Пример 1</button>
</p>
<pre class="brush: js">
var win1 = Ext.create('widget.window', {     // создание окна
    title: 'Лев 16:29-31',
    html:&lt;h1&gt;Москва-Петушки&lt;/h1&gt;Все говорят: Кремль, Кремль. Ото всех я слышал про него…',
    autoHeight: true,
    width: '30%', // ширина. Строковое значение задается по стандарту - px,%, em и т.д.
    closeAction: 'hide',       // Указание на то, что окно при закрывании не удаляется вместе с содержимым,
    tbar: [{                    // тулбар c меню
            text: 'Button',     // кнопка с выпадащим меню
            menu:   [           // само  меню
                        {text: 'Пиво'},
                        {text: 'Водка'},
                        {text: 'Коньяк'}
                    ]
            },
            {text: 'Закусить'}  // простая кнопка
         ]
});
</pre>
<h3>
   2. Вложенное меню
</h3>
<p>
  Вложенные меню - гадкая и неюзабельная штука. Особенно в веб. Но
  оно хорошо иллюстрирует как внутрь однного компонентна
  вклеивается другое.
</p>
<p>
  <button onclick="win2.show()">Пример 2</button>
</p>
<pre class="brush: js">
tbar: [{                    // тулбар c меню
        text: 'Выпить',     // кнопка с выпадащим меню
        menu:   [           // само  меню
                    {text: 'Пиво',
                     menu:   [           // вложенное  меню
                            {text: 'Жигулевское'},
                            {text: 'Ячменный колос'},
                            {text: 'Сенчу Алус'}
                            ]
                    },
                    {text: 'Водка'}
                ]
        },
        {text: 'Закусить'}  // простая кнопка
     ]

</pre>
<p>
  Прим. «Сенчу» - по случайному совпадению реальный сорт латышского
  пива, который продавался еще при СССР. Правда в соседние с ЛатССР
  области он попадал уже с осадком. Поэтому воспоминания об этом
  самые неприятные.
</p>
<h3>
   3. Красивое меню
</h3>
<p>
  ExtJS очень логичен. В предыдущем разделе я украсил иконками
  кнопки инструментальной панели. Точно так же украшаются и пункты
  меню.
</p>
<p>
  <button onclick="win3.show()">Пример 3</button>
</p>
<pre class="brush: js">
tbar: [{                    // тулбар c меню
      text: 'Пиво',
      iconCls:'icon_example',
                   menu:   [           // меню с картинками
                          {text: 'Жигулевское',
                            iconCls:'icon_example'},
                            {text: 'Ячменный колос',
                            iconCls:'icon_example'},
                            {text: 'Сенча Алус',
                            iconCls:'icon_example'}
                          ]
                  },
     {text: 'Водка',
     iconCls:'icon_example'}]
</pre>
<h3>
   4. Оживляем меню
</h3>
<p>
  И вот снова. Добавление события по нажатию на п. меню делается
  точно так же как и в предыдущем пункте для кнопки.<br/>
  Ниже приведен код только для меню.
</p>
<p>
  <button onclick="win4.show()">Пример 4</button>
</p>
<pre class="brush: js">
menu:   [           // само  меню
          {
            text: 'Водка',
            handler:  function(){ Ext.MessageBox.alert('Не забудьте пиво!'); }
          },
          {
            text: 'Коньяк',
            handler:  function(){ Ext.MessageBox.alert('Нет. Лучше водку!'); }
          }
      ]

</pre>
<h2>
  Далее<br/>
</h2>
<ol>
  <li>
    <a href="/51.htm">Панель с закладками</a>
  </li>
  <li>
    <a href="/53.htm">GridPanel - таблички</a>
  </li>
  <li>
    <a href="/57.htm">Form. Часть 1 - простые компооненты</a>
  </li>
</ol></div>
          <ol class="tags big">
            <li class="date">2011-11-27</li>
            <li>
              <a href="/ExtJS-4">ExtJS-4</a>
            </li>
          </ol>
          <ol class="see">
            <li>
              <a href="#"><span>docs.sencha.com/ext-js/4-0/#!/api/Ext.menu.Menu</span> - <b>Ext.menu.MenuView  API на  docs.sencha.com</b></a>
            </li>
          </ol>
          <ul class="comment"/>
        </div>
      </div>
      <div class="R">
        <a href="/" title="&#x41D;&#x430; &#x433;&#x43B;&#x430;&#x432;&#x43D;&#x443;&#x44E;"/>
      </div>
    </div>
    <div id="li"/>
  </body>
</html>

