Название: [РЕШЕНО] расположение элементов в диалоге поиска Отправлено: kambala от Январь 13, 2012, 16:33 Здравствуйте. Я набросал 2 варианта диалога поиска (см. скрины):
Может есть варианты получше? На всякий случай прикрепил сам файл формы если кому-то захочется поиграться в дизайнере.. Название: Re: расположение элементов в диалоге поиска Отправлено: GreatSnake от Январь 13, 2012, 16:54 Как минимум:
* Использовать вместо QLineEdit QComboBox, чтобы хранить историю * Добавить кнопку "Close" * Добавить кнопку "Automatically wrap around" * Почему нельзя "тянуть по горизонтали" 1-й вариант? * 2-й вариант смотрится убого Название: Re: расположение элементов в диалоге поиска Отправлено: kambala от Январь 13, 2012, 17:03 спасибо за критику.
* Использовать вместо QLineEdit QComboBox, чтобы хранить историю учту* Добавить кнопку "Close" не совсем понимаю зачем - есть крестик и есть ескейп* Добавить кнопку "Automatically wrap around" это для того, чтоб поиск переходил к первому элементу после последнего?* Почему нельзя "тянуть по горизонтали" 1-й вариант? теряется симметричность чекбоксов и центральная кнопка растягивается быстрее всех. может это как-то можно настроить кодом? там используется просто компоновка по сетке.Название: Re: расположение элементов в диалоге поиска Отправлено: andrew.k от Январь 13, 2012, 17:05 next и previous местами поменять. А то с ума сойдешь)
Название: Re: расположение элементов в диалоге поиска Отправлено: andrew.k от Январь 13, 2012, 17:06 а я бы кнопки справа разместил, а чекбоксы под строкой поиска.
Название: Re: расположение элементов в диалоге поиска Отправлено: GreatSnake от Январь 13, 2012, 17:15 * Добавить кнопку "Close" не совсем понимаю зачем - есть крестик и есть ескейпНазвание: Re: расположение элементов в диалоге поиска Отправлено: iroln от Январь 13, 2012, 17:52 Когда-то я даже писал эссе по поводу оптимального диалога поиска и сравнения юзабилити поиска в различных программах. :)
У меня получилось нечто такое (но сейчас я бы сделал просто панель с инкрементальным поиском как в Sublime Text): Название: Re: расположение элементов в диалоге поиска Отправлено: mutineer от Январь 13, 2012, 17:57 теряется симметричность чекбоксов и центральная кнопка растягивается быстрее всех. может это как-то можно настроить кодом? там используется просто компоновка по сетке. Конечно можно void QBoxLayout::addWidget ( QWidget * widget, int stretch = 0, Qt::Alignment alignment = 0 ) второй параметр тебе поможет Название: Re: расположение элементов в диалоге поиска Отправлено: kambala от Январь 13, 2012, 18:49 next и previous местами поменять. А то с ума сойдешь) хм, почему? по-моему поиск вперед как раз должен находиться с краю формы.* Добавить кнопку "Close" не совсем понимаю зачем - есть крестик и есть ескейпКогда-то я даже писал эссе по поводу оптимального диалога поиска и сравнения юзабилити поиска в различных программах. :) мне нравится получившийся результат (только в гтк что-то текст не повлезал) - сделаю в таком же духе, спасибо. также спасибо за наводку на Sublime Text - думаю может стать достойной заменой TextMate и Notepad++. но его панель поиска в данном случае мне не подходит :)У меня получилось нечто такое (но сейчас я бы сделал просто панель с инкрементальным поиском как в Sublime Text): как я понял, wrap around - это поиск с текущего места в документе с переходом в начало документа после достижения конца и продолжения поиска до текущего места. это верно? теряется симметричность чекбоксов и центральная кнопка растягивается быстрее всех. может это как-то можно настроить кодом? там используется просто компоновка по сетке. Конечно можно void QBoxLayout::addWidget ( QWidget * widget, int stretch = 0, Qt::Alignment alignment = 0 ) второй параметр тебе поможет Название: Re: расположение элементов в диалоге поиска Отправлено: andrew.k от Январь 13, 2012, 19:07 next и previous местами поменять. А то с ума сойдешь) По-моему логично справа - вперед, слева - назад. Представь что кнопок всего две вперед и назад. Как бы ты их расположил? ) Название: Re: расположение элементов в диалоге поиска Отправлено: iroln от Январь 13, 2012, 19:09 ... Да, это зацикливание поиска. Если галочка не стоит, поиск от текущей позиции курсора "упирается" в конец или начало страницы (смотрю в какую сторону искать). Галочка полезная, бывает нужно, например для Replace All во всём документе независимо от текущего положения курсора. как я понял, wrap around - это поиск с текущего места в документе с переходом в начало документа после достижения конца и продолжения поиска до текущего места. это верно? Ещё немного комментариев. Look In - это поле где искать. Поле было специфичным под задачу, поэтому легко может быть убрано. Две кнопки Next/Previous - это лучшее решение чем одна "Find" и настройка направления. Две кнопки гораздо удобнее (для тех, кто использует мышку, а не клавиатуру). Я считаю, нет смысла в разделении диалогов Find и Find/Replace, потому что по сути функциональность поиска дублируется в диалоге Replace. Удобнее, когда Replace всегда присутствует в диалоге поиска. Много места это не занимает, внимание не отвлекает и всегда под рукой если понадобится, нет нужды запоминать, какое сочетание клавиш вызывает диалог замены Ctrl+H или Ctrl+R, всё всегда в одном месте вызывается по Ctrl+F. :) Галочка Highlight Results может быть полезна если надо подсветить все найденные результаты на странице. Визуальное отделение всех результатов цветом важно, даёт представление о количестве вхождений в целом. Удобно использовать в связке с галочкой Incremental. Галочка Incremental - это дань инкрементному поиску, который я считаю (и не только я) более удобным. То есть поиск происходит по мере набора. Удобно использовать в связке с галочкой Highlight Results. :) Кнопки справа удобнее в том плане, что окошко можно смело раздвигать по-горизонтали, при этом получается лучшая группировка кнопок. Это ещё логично с точки зрения нашей письменности слева-направо сверху-вниз. Сначала вводим то что хотим искать, правее нажимаем "Поиск". И кстати рукой с мышкой двигать проще по-горизонтали. Галочки кстати тоже расставлены по значимости, чем правее и ниже тем меньше значимость. Кнопка Close - это всегда удобнее чем маленький крестик. Hotkey для неё - естественно Escape. :) Ещё хочу заметить, что данный диалог поиска покрывает потребности 99% пользователей. В нём нет ничего лишнего, окно имеет небольшой размер (я считаю важным, чтобы окно поиска было узким но не слишком). Для примера, посмотрите на диалог поиска в Notepad++. Это же монстроузно. :) Название: Re: расположение элементов в диалоге поиска Отправлено: kambala от Январь 13, 2012, 21:32 ого, такие пространные объяснения :)
а есть ли смысл растяжения по вертикали? если да, то все кнопки кроме "закрыть" и поля поиска/замены должны по идее оставаться сверху, а кнопка "закрыть", поле пути поиска и настройки - ездить? кстати по поводу замены - можно использовать одии и тот же виджет и просто скрывать поле замены и соответствующие кнопки в режиме только поиска. Название: Re: расположение элементов в диалоге поиска Отправлено: iroln от Январь 13, 2012, 21:48 а есть ли смысл растяжения по вертикали? если да, то все кнопки кроме "закрыть" и поля поиска/замены должны по идее оставаться сверху, а кнопка "закрыть", поле пути поиска и настройки - ездить? Вообще смысла в вертикальном растяжении я не вижу. И в горизонтальном особо тоже. :)кстати по поводу замены - можно использовать одни и тот же виджет и просто скрывать поле замены и соответствующие кнопки в режиме только поиска. Так в том и соль, что смысла особого нет скрывать функцию замены. Она кому-то мешает? Создаёт дополнительную сложность. Вряд ли, поэтому не думаю, что так уж надо её прятать. Можно, конечно, скрывать дополнительные функции поиска, например всякие редко-используемые галочки и т.д., но не могу сказать, насколько это будет востребовано.Название: Re: расположение элементов в диалоге поиска Отправлено: andrew.k от Январь 13, 2012, 22:43 Слушай, iroln, можешь скинуть в личку свое эссе.
Мне было бы интересно почитать. И еще другие работы если есть. И если не жалко и он не секретные) Название: Re: расположение элементов в диалоге поиска Отправлено: kambala от Январь 14, 2012, 16:06 получилось вот так, тянется по горизонтали. всем спасибо!
|