我通过扩展qx.ui.core.scroll.AbstractScrollArea创建自定义窗口小部件。这是大致的代码
qx.Class.define("headers.HeadersList", {
extend : qx.ui.core.scroll.AbstractScrollArea,
include: [
qx.ui.core.MRemoteChildrenHandling
],
construct: function() {
this.base(arguments);
this.__container = this._createItemsContainer();
this.getChildControl("pane").add(this.__container);
},
members: {
__container: null,
_createItemsContainer: function() {
const layout = new qx.ui.layout.VBox(10);
const container = new qx.ui.container.Composite(layout);
container.setPaddingRight(3);
return container;
},
getChildrenContainer: function() {
return this.__container;
}
}
});
内容是动态添加的。问题是当滚动条出现时,内容的宽度逐渐缩小,为滚动条腾出空间。
我做了一个游乐场示例,以说明我的意思http:// tinyurl.com/yygunxya
如果您按下“添加文本字段”按钮超过4次,则会出现滚动条,并且文本框会变窄。
在滚动条可见或不可见的情况下,文本框的宽度如何保持不变?
答案 0 :(得分:2)
如果您希望文本字段不调整为可用空间,则必须 首先设置所需的宽度,然后必须禁止收缩:
const textField = new qx.ui.form.TextField(range.toString()).set({
allowShrinkX: false,
width: 300
});