我想更改工具提示的位置以将其显示在按钮上。我尝试了 ExtJs 论坛中提到的以下方法。它不起作用,我无法覆盖getTargetXY方法,工具提示始终显示在同一位置。你有什么解决办法吗?
this.desktopButton = new Ext.Button({
icon: "arrow_in.png",
scope: this,
handler: this.desktopButtonHandler,
tooltip: new Ext.ToolTip({
text: 'Message',
getTargetXY: function () {
return [100, 100];
}
})
});
Run Code Online (Sandbox Code Playgroud)
Ext 元素只能传递文档中指定的配置选项;getTargetXY不是这些选项之一。
如果要覆盖该方法,您有两种选择:
我不建议覆盖该方法,因为这可能会产生其他后果。但是,我将解释如何做到这两点。
要覆盖工具提示:
Ext.override(Ext.Tooltip, {
getTargetXY: function() {
return [100, 100]
}
});
Run Code Online (Sandbox Code Playgroud)
要扩展工具提示:
MyToolTip = Ext.Extend(Ext.Tooltip, {
constructor: function(config) {
var config = config || {};
if (config.getTargetXY) {
this.getTargetXY = config.getTargetXY;
}
MyToolTip.superclass.constructor.call(this, config);
}
});
Run Code Online (Sandbox Code Playgroud)