AIMP Forum

AIMP for Windows => Skin Editor, Skin Engine => Вопросы / Questions => Topic started by: Aleksandr009 on October 21, 2016, 19:20:25

Title: Ввод параметра в обложку через текстовое поле
Post by: Aleksandr009 on October 21, 2016, 19:20:25
Как-то спрашивал про ввод параметров в обложку через текстовое поле(используется которое для поиска). Тогда не вышло ничего. Сейчас копаясь в старых примерах решил проблему.

В примере меняется шрифт. Хотя это может пригодится для чего угодно размеры, цвет, переменные для расчета в скрипте и т.д. и т.п.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Zhenya on October 21, 2016, 19:51:48
Круто, +1.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Aleksandr009 on October 21, 2016, 20:06:43
Решил добавить комментарий ;D
Тогда провозился долго. Решилось всё заменой Get  на GetDataAsText.

Может кто сможет упростить, сделать без виртуального набора связей?
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Zhenya on October 21, 2016, 20:18:14
Решил добавить комментарий ;D
Тогда провозился долго. Решилось всё заменой Get  на GetDataAsText.
Это да) Я так же попадал.

Может кто сможет упростить, сделать без виртуального набора связей?
Как вариант, можно хранить в скрытой текстовой метке или кнопке (свойство Caption). Но это если заранее известно точное (или максимальное) количество сохраняемых значений, плюс создавать элементы нужно заранее, в редакторе.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Zhenya on October 21, 2016, 23:03:16
Я похоже немного неправильно понял. Я подумал, что сабж про то, что можно не только принять данные от пользователя, но и сохранить их за пределами скрипта.
Потому что обратиться к этому набору связей из другого скрипта у меня не получилось (первое вложение).

Может кто сможет упростить, сделать без виртуального набора связей?
Сделал через "скрытую" текстовую метку (второе вложение).
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Black_AVP on October 21, 2016, 23:16:10
Сделал через "скрытую" текстовую метку (второе вложение).
+1
В точности тоже самое пытался когда-то сделать, но не додумался до GetDataAsText.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Black_AVP on October 22, 2016, 09:37:18
Оказывается, подобным же образом можно достучаться и до DigitsDisplay.DisplayValue через GetDataAsText и GetDataAsInteger. И до других элементов, наверное тоже, надо проверять.
Aleksandr009, +1 за находку! Весьма востребовано будет для DD.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Black_AVP on October 22, 2016, 10:09:52
Остаются ещё два момента:
1. Поймать завершение ввода - нажатие Enter. Проблема в том, что на SearchEdit.Action при этом ничего, похоже, не происходит. Применение же отдельной кнопки для этих целей - несколько некрасиво и не удобно.
2. Валидация введённого значения. В случае числа это довольно просто сделать в скрипте, а вот имена шрифтов...
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Aleksandr009 on October 22, 2016, 11:04:05
Остаются ещё два момента:
1. Поймать завершение ввода - нажатие Enter. Проблема в том, что на SearchEdit.Action при этом ничего, похоже, не происходит. Применение же отдельной кнопки для этих целей - несколько некрасиво и не удобно.
2. Валидация введённого значения. В случае числа это довольно просто сделать в скрипте, а вот имена шрифтов...
1. Попытался тоже. Есть мысль что при Action передаётся текст с каким либо параметром. Не знаю как проверить.
2. Шрифт ошибку не вызывает же. У меня при просто устанавливается Arial.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Black_AVP on October 22, 2016, 11:44:36
... Есть мысль что при Action передаётся текст с каким либо параметром.
Не похоже. Пробовал цеплять к нему счётчик - инкремента не происходит, тишина.

Шрифт ошибку не вызывает же. У меня при просто устанавливается Arial.
Вот в том и дело, что нет никакого сообщения об ошибке, что пользователя введёт в заблуждение: то ли у него шрифта такого нет, то ли ошибка в имени. Несерьёзно это.

По больщому счёту для нормального диалога с пользователем нам не хватает нескольких провайдеров:
TextEdit
NumEdit, может SpinEdit
FontDialog
ColorDialog
может, ещё чего... дабы отказаться от подобных кривокостыльных решений.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Black_AVP on October 22, 2016, 17:10:12
Оказывается, подобным же образом можно достучаться и до DigitsDisplay.DisplayValue через GetDataAsText и GetDataAsInteger. И до других элементов, наверное тоже, надо проверять.
Проверил, что смог. Пожалуй, метод GetDataAsInteger может быть полезен ещё только в TimeDisplay для определения знака числа, т.е. можно узнать: идёт прямой отсчёт времени или обатный. Однако, в режиме СТОП там 0.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Aleksandr009 on October 23, 2016, 10:39:33
Возникла мысль с помощью этого метода проверить передка встраиваемого окна. Только у меня не получается. Может у кого получится?
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Black_AVP on October 23, 2016, 11:27:30
Возникла мысль с помощью этого метода проверить передка встраиваемого окна. Только у меня не получается. Может у кого получится?
И с кем линк искать?
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Aleksandr009 on October 23, 2016, 11:34:20
И с кем линк искать?
Я хотел сделать чтобы при первом появлении окно не было встроено. Так что наверное с LayoutDockSite. Как ранее я понял окно целиком встраивается в LayoutDockSite. Так что предка у окна может и не быть или скорее не должно быть. Просто хотелось проверить.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Zhenya on October 26, 2016, 23:50:29
Возникла мысль с помощью этого метода проверить передка встраиваемого окна. Только у меня не получается. Может у кого получится?
Какого метода? LinkFind? Там же нет связей между окном/контейнером и зоной пристыковки. Мне кажется это сделано на более низком уровне, до куда не добраться биндингом или скриптами.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Aleksandr009 on October 27, 2016, 08:58:40
Какого метода? LinkFind? Там же нет связей между окном/контейнером и зоной пристыковки. Мне кажется это сделано на более низком уровне, до куда не добраться биндингом или скриптами.
Спасибо.
Title: Re: Ввод параметра в обложку через текстовое поле
Post by: Zhenya on October 27, 2016, 18:00:26
Спасибо.
За что? :)
Это всего лишь моё предположение.