gpt4 book ai didi

apache-flex - DataGrid 中的删除线

转载 作者:行者123 更新时间:2023-12-04 06:17:40 25 4
gpt4 key购买 nike

给定一些规则,我想在 DataGrid 中删除整行。是否可以?

最佳答案

使这项工作最可靠的方法是使用自定义项渲染器,其中覆盖 OnUpdateDisplay 函数,您使用图形对象在数据网格项的标签之间绘制一条水平线,基于 bool 值范围。

如果您愿意,我可以为标签写下类似这样的内容,但您必须弄清楚使其与 Datagrid 项目组件一起工作的内部结构。

如果您想让我粘贴标签示例,请告诉我。

编辑(粘贴示例)

创建一个新的 flex 项目,添加一个扩展标签的新类。类的名称是 StrikeThroughLabel .把它放在默认包中(即,将包字段留空)

    package
{
import mx.controls.Label;

public class StrikeThroughLabel extends Label
{
private var isStriked:Boolean = false;

public function StrikeThroughLabel()
{
super();
}

public function set striked(aIsStriked:Boolean):void{
isStriked = aIsStriked;
this.updateDisplayList(this.width, this.height);
}

override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void{
super.updateDisplayList(unscaledWidth, unscaledHeight);
if(isStriked){
graphics.lineStyle(1,0x0000FF,1,false,"normal",null,null,3.0);
graphics.lineTo(unscaledWidth,unscaledHeight);
}else{
graphics.clear();
}
}
}
}

完成后,进入您的 main.mxml 并使用以下 mxml 代码:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="windowedapplication1_creationCompleteHandler(event)"
xmlns:local="*">
<local:StrikeThroughLabel id="strikeThrough" text="Hello" x="129" y="128"/>
<mx:Script>
<![CDATA[
import mx.events.FlexEvent;


private var isLabelStriked:Boolean = false;

protected function windowedapplication1_creationCompleteHandler(event:FlexEvent):void
{
// TODO Auto-generated method stub
//this.strikeThrough.striked = true;
}


protected function button1_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
isLabelStriked = !isLabelStriked;
this.strikeThrough.striked = isLabelStriked;
}

]]>
</mx:Script>
<mx:Button click="button1_clickHandler(event)" id="myButton" label="Toggle"/>
</mx:WindowedApplication>

上面显示了一个按钮和一个标签,单击按钮可切换标签上的删除线。
请注意,现在删除线是对角线,但只需在绘制线条登录时进行一些调整,您就会得到水平删除线。

关于apache-flex - DataGrid 中的删除线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7018265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com