0

実際には、チェックボックスを使用してデータグリッドの行をコード選択する必要があります。次に、行を選択すると、その行のみが印刷されます。行を選択するものがない場合は、すべての行を印刷します。Plzはコードを助けます。

                    <mx:DataGrid id="dg" dataProvider="{dp}" allowMultipleSelection="true" selectable="true" height="100%" width="100%" >
                        <mx:columns>

                                <mx:DataGridColumn headerText="Select" dataField="Select" textAlign="center">
                                    <mx:itemRenderer>
                                        <fx:Component id="chkGrid">
                                            <mx:CheckBox click="data.Select=!data.Select" selected="{data.Select}"/>
                                        </fx:Component>
                                    </mx:itemRenderer>
                                </mx:DataGridColumn>

                            <mx:DataGridColumn headerText="Name" dataField="Nname"/>
                            <mx:DataGridColumn headerText="Metal Weight" dataField="metalwgt"/>
                            <mx:DataGridColumn headerText="Diamond Weight" dataField="diamondwgt"/>
                            <mx:DataGridColumn headerText="Metal Carat" dataField="carat"/>
                            <mx:DataGridColumn headerText="Price" dataField="price"/>
                            <mx:DataGridColumn headerText="ImagePath" dataField="imagePathTxt" visible="false"/>
                        </mx:columns>
                    </mx:DataGrid>

                </s:VGroup>
            </s:BorderContainer>

        </s:VGroup>
    </s:HGroup>
</s:BorderContainer>

4

1 に答える 1

0

は印刷ボタンのクリックハンドラーであると想定print_clickHandlerします。次に、これらの選択された行を取得するためのコードは次のようになります。

protected function print_clickHandler():void
{
    var PrintCollection:ArrayCollection = new ArrayCollection;
    // The below code will get you the selected rows..
    for each(var item:Object in dp)
    {
        if(item.hasOwnProperty("Select") && item.Select)
          PrintCollection.addItem(item);
    }

    // PrintCollection is the selected rows collection which you need to print
    // or the below code will also get you the selected rows.. Either of it will work       
    dp.filterFunction = function(item:Object):Boolean
    {
        return (item.hasOwnProperty("Select") && item.Select);
    }
    dp.refresh();

    // dp is the selected rows collection which you need to print
}
于 2013-01-18T06:38:10.823 に答える