Jump to content

FieldLabel click event for unimDBLookupComboBox


x11

Recommended Posts

16 minutes ago, x11 said:

только при первом нажатии подсказка всплывает вот так, а при втором уже нормально - по центру экрана.

Вы также можете попробовать использовать разные значения, этой конфигурации:

https://docs.sencha.com/extjs/7.0.0/modern/Ext.tip.ToolTip.html#cfg-align

Link to comment
Share on other sites

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

как быть?

Link to comment
Share on other sites

On 8/19/2020 at 2:35 PM, x11 said:

еще небольша проблемка - иконка закрытия обрезана

Screenshot_29.jpg

Не могу найти свойство здесь, отвечающее за размеры.

Сделать бы кнопку покрупнее или сделать бы так, чтобы подсказка закрывалась при клике вне окна подсказке и/или при клике прямо по подсказке.

Link to comment
Share on other sites

подскажите, как управлять заголовоком у всплывающей подсказки? например высотой

если просто указать
 

title.height: 'auto'

то будет ошибка при открытии формы

Screenshot_24.jpg

Link to comment
Share on other sites

 

3 hours ago, x11 said:

Сделать бы кнопку покрупнее или сделать бы так, чтобы подсказка закрывалась при клике вне окна подсказке и/или при клике прямо по подсказке.

 

Link to comment
Share on other sites

  • 2 weeks later...
On 8/20/2020 at 5:46 PM, x11 said:

Получается, что эта процедура загружается в браузер 20 раз, т.к. на форме 20 компонентов. Т.е. по сети приходит передавать 20 раз одно и то же, что очень плохо.

А какой смысл одну и ту же процедуру передавать 20 раз для 20ти компонентов?

Простите за поздний ответ...

Я сегодня-завтра, попробую еще раз проанализировать Ваш запрос.

  • Like 1
Link to comment
Share on other sites

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');
}

 

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...