如何在Qooxdoo中基于CanvasLayout的Custom Widget设置Border / Background?

时间:2010-02-09 09:47:22

标签: qooxdoo

我是Qooxdoo的新手(我使用的是0.7.4版本,因为我使用的是Eclipse RAP),我正在尝试创建一个基于CanvasLayout类的自定义窗口小部件,它可以复合另一个窗口小部件。这里代码很平静:

qx.Class.define( "my.CanvasWidget", {
  extend: qx.ui.layout.CanvasLayout,
   construct: function( id ) {
     this.base( arguments );
     ...
   }

    }
  } );


//If using:

var myCanvasWidget = new my.CanvasWidget("myId");
...
myCanvasWidget.setBackgroundColor("#ff0000");

我的问题是:setBackgroundColor对myCanvasWidget没有任何作用,为什么会这样(属性backgroundColor存在于超类“Widget”中)?

1 个答案:

答案 0 :(得分:0)

这取决于CanvasLayout小部件的大小。设置它的大小(高度和宽度)将显示背景颜色。

 // in the constructor of your widget
 this.setWidth(100);  // 100 for example
 this.setHeight(100);

由于它是0.7.x,据我所知,尺寸信息不会自动计算,因此您必须自己处理。