extjs4显示工具提示按钮单击而不是鼠标悬停

时间:2012-12-12 23:01:56

标签: javascript extjs tooltip extjs4.1

我正在尝试在下面的工具提示中添加一个点击监听器。 我不希望工具提示在鼠标悬停时显示。相反,它需要在点击按钮时显示。 我是否必须在侦听器中添加处理函数?

{
                    xtype: 'button',
                    cls:'my-btn',
                    iconCls:'question',                     
                    src:'../www/css/slate/btn/question.png',
                    padding: '5 0 0 0',

                    listeners: {


                        render: function(cmp) {
                            Ext.create('Ext.tip.ToolTip', {
                                closable:true,
                                hideDelay : 3000,
                                padding: '0 0 0 0',
                                maxWidth:400,
                                width:800,

                                target: cmp.el,
                                html: "<b>read-only</b>:Users will have read only access to all pages",
                                getTargetXY: function() {
                                    return [810, 340];
                                }
                            });
                        }

                    }


                },

1 个答案:

答案 0 :(得分:9)

是的,在click上,您可以通过编程方式显示工具提示,跳过target并添加showAt()

...

listeners: {
    click: function(cmp) {
        Ext.create('Ext.tip.ToolTip', {
            closable:true,
            hideDelay : 3000,
            padding: '0 0 0 0',
            maxWidth:400,
            width:800,
            html: "<b>read-only</b>:Users will have read only access to all pages",
        }).showAt([810, 340]);

    }
}

如果您不需要自动隐藏(您的工具提示无论如何都可以关闭),您只需Ext.tip.Tip

        Ext.create('Ext.tip.Tip', {
            closable:true,
            padding: '0 0 0 0',
            maxWidth:400,
            width:800,
            html: "<b>read-only</b>:Users will have read only access to all pages",
        }).showAt([810, 340]);