prompt()
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: вопросы и хотелки
В случае пустого значения можно дополнительно спрашивать у юзера чего он хочет.
Альтернативно: удалять можно не при пустом значении, а при сигнальной строке типа "<del>".
Но правильнее наверно как-то подкрутить prompt().
Альтернативно: удалять можно не при пустом значении, а при сигнальной строке типа "<del>".
Но правильнее наверно как-то подкрутить prompt().
- SlashNet
- Posts: 638
- Joined: Fri 20 Mar, 2009 09:43
- Location: Львов
- Has thanked: 16 times
- Been thanked: 16 times
Re: вопросы и хотелки
На таком варианте пока что и остановился (только ключевым символом является пробел)John Doe wrote:Альтернативно: удалять можно не при пустом значении, а при сигнальной строке типа "<del>".
Конечно, удобнее было бы просто добавить ещё один флаг в prompt. Что-то типа: "при нажатии на Cancel/Escape тупо завершать работу макроса". Но он будет слишком уж выделяться на фоне других флагов...John Doe wrote:Но правильнее наверно как-то подкрутить prompt().
ədиw wo⊥є ʚ o⊥ʎнdəʚədəu əɔʚ
- HaRT
- Moderator
- Posts: 10823
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: вопросы и хотелки
А позволяет ли макродвижок различить 0 и ""?John Doe wrote:правильнее наверно как-то подкрутить prompt().
Если да, то при отмене можно было возвращать как раз 0.
Ну уж только не так.SlashNet wrote:"при нажатии на Cancel/Escape тупо завершать работу макроса".
Можно было бы добавить ещё один параметр — какое значение возвращать при отмене. Тогда уже каждый макрос мог бы указать что-то достаточно уникальное.
Фар есть инструмент, а не нянька. © 2009 DrKnS
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: вопросы и хотелки
Да (в большинстве случаев).HaRT wrote:А позволяет ли макродвижок различить 0 и ""?
Хороший вариант.HaRT wrote:Можно было бы добавить ещё один параметр — какое значение возвращать при отмене.
- SlashNet
- Posts: 638
- Joined: Fri 20 Mar, 2009 09:43
- Location: Львов
- Has thanked: 16 times
- Been thanked: 16 times
Re: вопросы и хотелки
Главное чтоб было различие между 0 и "0"... (если я, конечно, глупость не сморозил)HaRT wrote:А позволяет ли макродвижок различить 0 и ""?
Это вполне приемлемый вариант.HaRT wrote:Можно было бы добавить ещё один параметр — какое значение возвращать при отмене.
ədиw wo⊥є ʚ o⊥ʎнdəʚədəu əɔʚ
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: вопросы и хотелки
А вот с этим сложнее, т.к. при операциях сравнения оба значения приведутся к одному типу. Т.е. различие изчезнет.SlashNet wrote:Главное чтоб было различие между 0 и "0"...HaRT wrote:А позволяет ли макродвижок различить 0 и ""?
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: prompt()
Тему отделил от исходной.
Внимание:
Это очень плохая практика — смешивать абсолютно разные вопросы в одной теме.
В результате получачаются "мусорные" темы, в которых потом ничего невозможно найти.
(Есть у нас один пользователь, любит такие создавать)
Я не одну такую тему разгрёб, и уверяю вас, не получил от этого никакого удовольствия.
Внимание:
Это очень плохая практика — смешивать абсолютно разные вопросы в одной теме.
В результате получачаются "мусорные" темы, в которых потом ничего невозможно найти.
(Есть у нас один пользователь, любит такие создавать)
Я не одну такую тему разгрёб, и уверяю вас, не получил от этого никакого удовольствия.
Re: prompt()
Верно ли я понимаю, что сейчас указание флага 0x01 в prompt() ни на что не влияет? Тоже уткнулся в неразличение пустого значения и нажатия Esc.
и
работают по-разному, а дальше уж - дело техники. Голосую за возврат числового значения 0 при закрытии диалога prompt() по Esc. На Мантисе есть?
Ну, не все так безнадежно, ибоJohn Doe wrote:А вот с этим сложнее, т.к. при операциях сравнения оба значения приведутся к одному типу. Т.е. различие изчезнет.SlashNet wrote:Главное чтоб было различие между 0 и "0"...
Code: Select all
%s=0; $If (%s) msgbox("1") $End
Code: Select all
%s="0"; $If (%s) msgbox("1") $End
Magically yours
Raistlin
Raistlin
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: prompt()
Да, это лучше чем сейчас ("").Raistlin wrote:Голосую за возврат числового значения 0 при закрытии диалога prompt() по Esc.
Но тогда всё усложняется: в писание придётся поместить примеры, демонстрирующие эту [не]последовательность фара в приведении типов.
Re: prompt()
А где здесь непоследовательность? Функция возвращает строку, если нажали Enter, и 0, если нажали Esc. Согласен, не очень красиво, но... Коли не продумали с самого начала, что ж поделаешь теперь.John Doe wrote:Но тогда всё усложняется: в писание придётся поместить примеры, демонстрирующие эту [не]последовательность фара в приведении типов.
Magically yours
Raistlin
Raistlin
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: prompt()
То что не продумали с самого начала вполне можно продумать потом.
А "непоследовательность" надо понимать в кавычках (в операциях сравнения "0" =0, а в логических "0"!=0).
Т.е. всё тут конечно правильно, но всё равно не мешает лишний раз подчеркнуть, ведь макросы не только программисты пишут.
А "непоследовательность" надо понимать в кавычках (в операциях сравнения "0" =0, а в логических "0"!=0).
Т.е. всё тут конечно правильно, но всё равно не мешает лишний раз подчеркнуть, ведь макросы не только программисты пишут.