как использовать правую кнопку мыши или изменить функцию на сетке данных в flex - PullRequest
0 голосов
/ 04 июля 2011

У меня есть сетка данных, которая содержала несколько элементов, когда я щелкаю одну строку, отображается панель, однако, если я уже выбрал одну строку, а затем щелкаю какое-то пустое место, эта панель также отображается, поскольку уже выбранный элемент , которая будет проблемой. Затем я изменяю это событие щелчка, чтобы изменить событие, однако будет другая проблема: если я щелкну по той же строке, ничего не произойдет. так что есть ли лучшая идея, когда я щелкаю строку, отображается панель, а когда я щелкаю пустое место, ничего не происходит.

1 Ответ

0 голосов
/ 06 июля 2011

Вы можете использовать глобальную переменную flag и установить ее в true, когда вы нажимаете на элемент в сетке данных.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
                      xmlns:mstr="http://web.microstrategy.com/visframe">
                      <mx:Script>
                        <![CDATA[

                        public var flag:Boolean = false;
                        public function showPanel():void
                        {
                            panel.visible = flag ? true : false;
                            flag=false;
                        }
                        ]]>

                      </mx:Script>

<mx:DataGrid id="dg" click="showPanel()" itemClick="flag=true;"
    dataProvider="{[{Name:'ABC', Age:'25'},{Name:'PQR', Age:'30'},{Name:'XYZ', Age:'20'}]}">
</mx:DataGrid>
<mx:Panel id="panel" visible="false" height="100" width="100"/>
</mx:Application>

Спасибо и всего наилучшего,
.................................................. .........................................
Пуджа Кубер | pkuber@infocepts.com | www.infocepts.com .................................................. .........................................

...