Sherzod Posted August 19, 2020 Share Posted August 19, 2020 16 minutes ago, x11 said: только при первом нажатии подсказка всплывает вот так, а при втором уже нормально - по центру экрана. Вы также можете попробовать использовать разные значения, этой конфигурации: https://docs.sencha.com/extjs/7.0.0/modern/Ext.tip.ToolTip.html#cfg-align Quote Link to comment Share on other sites More sharing options...
x11 Posted August 19, 2020 Author Share Posted August 19, 2020 В общем, без огромной картинки и 't' нормально работает. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted August 19, 2020 Share Posted August 19, 2020 OK Quote Link to comment Share on other sites More sharing options...
x11 Posted August 20, 2020 Author Share Posted August 20, 2020 On 8/19/2020 at 2:01 PM, Sherzod said: function afterCreate(sender) { sender.labelTip = Ext.create('Ext.tip.ToolTip', { target: sender.inputElement, //html: , align: 't', autoShow: true, autoScroll: true, focusOnToFront: true, autoHide: true, closable: true }); sender.labelElement.addListener('click', function(e) { e.preventDefault(); if (sender.labelTip) { if (sender.getPlaceholder()) { sender.labelTip.setHtml(sender.getPlaceholder() + '<br>' + '<img src="https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png"></img>'); } else { sender.labelTip.setHtml('<img src="https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png"></img>'); } sender.labelTip.show(); } }); } Получается, что эта процедура загружается в браузер 20 раз, т.к. на форме 20 компонентов. Т.е. по сети приходит передавать 20 раз одно и то же, что очень плохо. А какой смысл одну и ту же процедуру передавать 20 раз для 20ти компонентов? Вопрос. Как правильно сделать так, чтобы она загрузилась в браузер 1 раз, но ее использовали все компоненты, которые я укажу. Т.к. реально на форме 30 разных компонентов, но ToolTip должен быть только для 20ти. Например, у этих 20ти компонентов можно сделать что-то типа function afterCreate(sender) { а здесь уже вызывать эт процедуру } вот как и где передать текст процедуры, чтобы в afterCreate не было ошибки? И у мобильных форм нету свойства script как быть? Quote Link to comment Share on other sites More sharing options...
Sherzod Posted August 20, 2020 Share Posted August 20, 2020 Да, Вы правы. Можно и нужно оптимизировать код. Я посмотрю чуть позже. 1 Quote Link to comment Share on other sites More sharing options...
x11 Posted August 21, 2020 Author Share Posted August 21, 2020 On 8/19/2020 at 2:35 PM, x11 said: еще небольша проблемка - иконка закрытия обрезана Не могу найти свойство здесь, отвечающее за размеры. Сделать бы кнопку покрупнее или сделать бы так, чтобы подсказка закрывалась при клике вне окна подсказке и/или при клике прямо по подсказке. Quote Link to comment Share on other sites More sharing options...
x11 Posted August 21, 2020 Author Share Posted August 21, 2020 подскажите, как управлять заголовоком у всплывающей подсказки? например высотой если просто указать title.height: 'auto' то будет ошибка при открытии формы Quote Link to comment Share on other sites More sharing options...
x11 Posted August 21, 2020 Author Share Posted August 21, 2020 --- Quote Link to comment Share on other sites More sharing options...
Sherzod Posted August 21, 2020 Share Posted August 21, 2020 3 hours ago, x11 said: подскажите, как управлять заголовоком у всплывающей подсказки? например высотой А в чем, собственно, проблема? Quote Link to comment Share on other sites More sharing options...
x11 Posted August 21, 2020 Author Share Posted August 21, 2020 я ж написал - ошибка Quote Link to comment Share on other sites More sharing options...
x11 Posted August 21, 2020 Author Share Posted August 21, 2020 как правильно использовать height у title? https://docs.sencha.com/extjs/7.0.0/modern/Ext.panel.Title.html#cfg-height Quote Link to comment Share on other sites More sharing options...
Sherzod Posted August 21, 2020 Share Posted August 21, 2020 Цель, для чего Вы хотите указать height? Quote Link to comment Share on other sites More sharing options...
x11 Posted August 21, 2020 Author Share Posted August 21, 2020 кнопка закрытия обрезается Quote Link to comment Share on other sites More sharing options...
x11 Posted August 21, 2020 Author Share Posted August 21, 2020 3 hours ago, x11 said: Сделать бы кнопку покрупнее или сделать бы так, чтобы подсказка закрывалась при клике вне окна подсказке и/или при клике прямо по подсказке. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted August 21, 2020 Share Posted August 21, 2020 5 minutes ago, x11 said: кнопка закрытия обрезается Какая тема? Quote Link to comment Share on other sites More sharing options...
x11 Posted August 21, 2020 Author Share Posted August 21, 2020 Стандартная triton, чуть меньше обрезается в темах neptun и iOS. В matetial вообще нажатие не работает. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted September 4, 2020 Share Posted September 4, 2020 On 8/20/2020 at 5:46 PM, x11 said: Получается, что эта процедура загружается в браузер 20 раз, т.к. на форме 20 компонентов. Т.е. по сети приходит передавать 20 раз одно и то же, что очень плохо. А какой смысл одну и ту же процедуру передавать 20 раз для 20ти компонентов? Простите за поздний ответ... Я сегодня-завтра, попробую еще раз проанализировать Ваш запрос. 1 Quote Link to comment Share on other sites More sharing options...
Sherzod Posted September 6, 2020 Share Posted September 6, 2020 On 8/20/2020 at 5:46 PM, x11 said: Получается, что эта процедура загружается в браузер 20 раз, т.к. на форме 20 компонентов. Т.е. по сети приходит передавать 20 раз одно и то же, что очень плохо. MainmForm.ClientEvents.UniEvents -> function window.beforeInit(sender, config) { createToolTip = function(combo, tip) { combo.labelTip = Ext.create('Ext.tip.ToolTip', { closable: true, align: 't', focusOnToFront: true, autoHide: true, autoShow: true, autoScroll: true }); combo.labelElement.addListener('click', function(e) { e.preventDefault(); if (combo.labelTip) { if (combo.getPlaceholder()) { combo.labelTip.setHtml(combo.getPlaceholder() + '<br>' + tip); } else { combo.labelTip.setHtml(tip); } combo.labelTip.showByTarget(combo.inputElement); } }); }; } UnimDBLookupComboBox.ClientEvents.UniEvents -> function afterCreate(sender) { createToolTip(sender, 'Test'); } 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.