setStyle backgroundImage在Flex动作不起作用
问题描述:
我动态创建一个画布,我需要在画布内的背景图像。创建画布时会接受拖放,但背景图像不显示。setStyle backgroundImage在Flex动作不起作用
在画布触发是:
buttonNew.addEventListener("click",addCanvas);
画布代码:
private function addCanvas(oEvent:Event):void
{
caNew = new Canvas();
caNew.id = "cart"
caNew.name = "Shopping Cart";
caNew.x = 100;
caNew.y = 450;
caNew.width = 200;
caNew.height = 146;
caNew.setStyle("backgroundImage",cart_icon);
//caNew.setStyle("backgroundColor","#98AEEF");
this.addChild(caNew);
caNew.addEventListener(DragEvent.DRAG_ENTER, dragAcceptShop);
caNew.addEventListener(DragEvent.DRAG_DROP, dragDropShop);
laNew = new Label();
laNew.id = "contain"
laNew.text = "Shopping Cart";
laNew.x = 100;
laNew.y = 450;
laNew.width = 120;
laNew.height = 50;
this.addChild(laNew);
}
我在做什么错?就像我使用backgroundImage一样,它工作正常,只有颜色有效。
答
您没有指定您使用的是哪个版本的Flex SDK,但backgroundImage不是Spark主题中的可用样式。 Spark是Flex 4(及更高版本)项目的默认主题。 Check out all available sytles。
一种选择是将一个Image组件添加为画布上的第一个子项。
+0
我正在使用Flex 4.5,并将尝试将图像组件添加为画布中的子项。如果他们允许backgroundImage会更容易... –
+0
谢谢...画布上的孩子做到了这一招。 –
你在哪里定义cart_icon? – JeffryHouser
[嵌入( “资产/ Cart.png”)] \t \t \t [绑定] \t \t \t私人变种cart_icon:类; –
在代码中,即使我尝试在引用“assets/Cart.png”中添加完整源代码仍然无效 –