使用键盘键(如C,V,X,A键)弹出弹出窗口问题

时间:2012-03-22 06:33:00

标签: actionscript-3 flash flex air

正如我之前在弹出问题中所报告的那样,我无法写出" a,c,v和x"弹出窗口中文本输入字段中的字符。

对键文本输入字段上的那些键执行快捷操作(a =全选,c =复制,v =粘贴和x =剪切)。

完整案例:

在弹出窗口中有一个数据网格,在数据网格中有一个项目渲染器,我在其中输入输入。

以下是代码

<CheckBoxGrid:CheckBoxDataGrid id="id_DataGrid"
                               width="95%" height="90%"  allowMultipleSelection="true" editable="true"
                               dataProvider="{inHouseLabList}"
                               draggableColumns="false" 
                               useRollOver="false"
                               styleName="gridStyle"
                               rowCount="{id_DataGrid.dataProvider.length + 1}"
                               variableRowHeight="true" columnWidths="{[20,'10%','25%', '25%','30%']}">
    <CheckBoxGrid:columns>
        <mx:DataGridColumn dataField="" 
                           headerText="" 
                           rendererIsEditor="true"
                           sortable="false" 
                           itemRenderer="com.zigron.controls.extended.components.CheckBoxGrid.CheckBoxRenderer" 
                           headerRenderer="com.zigron.controls.extended.components.CheckBoxGrid.CheckBoxHeaderRenderer" 
                           editorDataField="selected" 
                           />
        <mx:DataGridColumn headerText="Test Code"       dataField="InHouseLabTestTypeDTO.TestCode"  editable="false" sortable="false"/>
        <mx:DataGridColumn headerText="Test Name"       dataField="InHouseLabTestTypeDTO.TestName"  editable="false"  />
        <mx:DataGridColumn headerText="Result"          dataField="TestResult" editable="true"      />
        <mx:DataGridColumn headerText="Normal Range"    dataField="InHouseLabTestTypeDTO.TestRange"     editable="false" />
    </CheckBoxGrid:columns>
</CheckBoxGrid:CheckBoxDataGrid>

1 个答案:

答案 0 :(得分:1)

弹出窗口中的FF11, DataGrid 中没有问题, itemRenderer 中的 TextInput ,< em> A,C,V,X 或 CTRL + A,C,V,X 有效:

<强> Application.mxml:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
    minWidth="955" minHeight="600" layout="vertical">

    <mx:Script>
        <![CDATA[
            import mx.managers.PopUpManager;

            protected function clickHandler(event:MouseEvent):void
            {
                var popup:MyPopup = new MyPopup();
                PopUpManager.addPopUp(popup, this)
            }

        ]]>
    </mx:Script>

    <mx:Button label="click me!" click="clickHandler(event)" />

</mx:Application>

<强> MyPopup.mxml:

<?xml version="1.0" encoding="utf-8"?>
<mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="400" height="300">

    <mx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;

            [Bindable]
            private var ac:ArrayCollection = new ArrayCollection([{}]);

        ]]>
    </mx:Script>

    <mx:DataGrid width="100%" height="100%" dataProvider="{ac}">
        <mx:columns>
            <mx:DataGridColumn headerText="MyTextInput">
                <mx:itemRenderer>
                    <mx:Component>
                        <mx:TextInput />
                    </mx:Component>
                </mx:itemRenderer>
            </mx:DataGridColumn>
        </mx:columns>
    </mx:DataGrid>

</mx:Panel>

请尝试并报告。

希望有所帮助