如何使用 extjs 3.4 将工具提示位置保持在任何屏幕上?

Posted

技术标签:

【中文标题】如何使用 extjs 3.4 将工具提示位置保持在任何屏幕上?【英文标题】:How can I keep the tooltip position on any screen using extjs 3.4? 【发布时间】:2017-12-06 19:53:23 【问题描述】:

我需要使用 extjs 3.4 将工具提示位置保持在任何屏幕上

笔记本示例(正确做法):

notebook screen image

监控示例(错误方式):

monitor screen image

我想将工具提示保持在第一张图片的右侧,但是如果我将页面更改为监视器,工具提示会更改其位置

我在网格的 tbar 中有工具提示:

tbar :  [
                      text: '<b>DEFINIR METAS</b>', 
                      id    : 'id_btn_definir_metas',
                      itemId: 'id_btn_definir_metas',
                      icon: '../icons/add.png',
                      scope: this,
                      scale: 'small',
                      iconAlign: 'left',
                      disabled: true,
                      handler: function()

                            modal_ventana_definir_metas();
                            Ext.getCmp('id_textarea_observacion_metas').setValue(obs_general_de_metas);


                      
                    ,
                      xtype: 'tbseparator', 
                    ,
                      icon: '../icons/question-frame.png',
                      itemId: 'id_btn_agregar_metas',
                      disabled : true,
                      listeners: 
                          render: function(c) 
                              new Ext.ToolTip(
                                  dismissDelay: 50000,
                                  target: c.getEl(),
                                  getTargetXY: function() 
                                    return [290,300];
                                  ,
                                  html: 'Presione el botón "DEFINIR METAS" para iniciar el proceso de definición de metas.'
                              );
                          
                      ,
],

对不起我的英语

【问题讨论】:

【参考方案1】:

问题是我指定了位置。

这种方式效果很好:

tbar :  [
                      text: '<b>DEFINIR METAS</b>', 
                      id    : 'id_btn_definir_metas',
                      itemId: 'id_btn_definir_metas',
                      icon: '../icons/add.png',
                      scope: this,
                      scale: 'small',
                      iconAlign: 'left',
                      disabled: true,
                      handler: function()

                            modal_ventana_definir_metas();
                            Ext.getCmp('id_textarea_observacion_metas').setValue(obs_general_de_metas);


                      
                    ,
                      xtype: 'tbseparator', 
                    ,
                      icon: '../icons/question-frame.png',
                      itemId: 'id_btn_agregar_metas',
                      disabled : true,
                      listeners: 
                          render: function(c) 
                              new Ext.ToolTip(
                                  dismissDelay: 50000,
                                  target: c.getEl(),
                                  //target: targetId,
                                  //html: 'ToolTip',
                                  anchor: 'left',
                                  //dismissDelay: 0,
                                  showDelay: 0,
                                  //autoHide: false,
                                  // getTargetXY: function() 
                                  //   return [290,300];
                                  // ,
                                  html: 'Presione el botón "DEFINIR METAS" para iniciar el proceso de definición de metas.'
                              );
                          
                      ,
                    ],

【讨论】:

以上是关于如何使用 extjs 3.4 将工具提示位置保持在任何屏幕上?的主要内容,如果未能解决你的问题,请参考以下文章

extjs 3.4 在字段中添加工具提示

ExtJs 3.4 - 如何提示预加载的 textField 组件的内容

如何在 extjs 3.4 中为必填字段标记 (*)

如何将自定义 css 工具提示添加到 extjs 列标题?

extjs 3.4 如何动态添加复选框到工具栏

如何在盒子组件EXTJs 3.4中添加图像