因为Flex的DataGrid中的列中的数据不能选中拷贝,很不方便。刚开始的想法是,双击弹出一个窗口把内容拷贝到一个dataField中去。后来觉得太麻烦。又想使这个列可编辑,但当焦点移开时数据自动恢复。觉得这个想法更麻烦,而且容易给用户造成错觉。后来BBS上说,dataGridColumn默认的是Label不能选中拷贝,但可以通过设置项渲染器,也就是itemRenderer,将项替换成mx:Text实现。觉得这个想法很好的满足了我的需求:
<mx:DataGridColumn dataField="desc" headerText="内容描述" minWidth="400" wordWrap="true" > <mx:itemRenderer> <fx:Component> <mx:Text > </mx:Text> </fx:Component> </mx:itemRenderer> </mx:DataGridColumn>
右键或者Ctrl+c都可以