Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: juvf от Февраль 28, 2014, 06:07



Название: Виджет для отображения цифр
Отправлено: juvf от Февраль 28, 2014, 06:07
Нужен виджет для отображения цифр, но не просто QLabel. Нужен такой, чтобы было видно обновление. Например если лэйба отображает "32", и установить в неё новое значение 32, то пользователь не увидит, что значение обновилось (да даже с 32 на 31.... и то.. боковым зрением не увидеть).
А нужно чтобы это было явно заметно.

Например можно отобразить в виде барабанов, как на механических одометрах. Или табличка, на ней цифра, при обновлении цифры табличка разворачивается вокроуг своей оси на 180° и на другой стороне новое значение.

Где в инете можно подобными виджетами разжиться?


Название: Re: Виджет для отображения цифр
Отправлено: OKTA от Февраль 28, 2014, 07:19
Зачем такие дикости?  ;D
Сделайте, чтобы мигало красным цветом - лучше всего будет заметно)


Название: Re: Виджет для отображения цифр
Отправлено: gil9red от Февраль 28, 2014, 07:21
Зачем такие дикости?  ;D
Сделайте, чтобы мигало красным цветом - лучше всего будет заметно)
+100500 :)


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Февраль 28, 2014, 07:42
как вариант так пока и сделаю, мигание. Но мигание не ассоциируется с обновлением. ГИУ должен быть интуитивно понятным, чтобы потом всякие РЭ не писать.


Название: Re: Виджет для отображения цифр
Отправлено: Swa от Февраль 28, 2014, 07:59
Может это (https://qt.gitorious.org/qt-labs/graphics-dojo/source/8000ca3b229344ed2ba2ae81ed5ebaee86e9d63a:digiflip/digiflip.cpp) подойдет? Это виджет flip clock для смартфонов.


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Февраль 28, 2014, 08:00
Да... подойдёт. Спасибо.


Название: Re: Виджет для отображения цифр
Отправлено: OKTA от Февраль 28, 2014, 08:01
как вариант так пока и сделаю, мигание. Но мигание не ассоциируется с обновлением. ГИУ должен быть интуитивно понятным, чтобы потом всякие РЭ не писать.

А для чего вы делаете приложение? Тут дело не в интуитивности, а в том, что когда в пределах обзора человеческого глаза что-то мигает, тем более ярким красным, он обращает на это внимание, а на крутилки всякие и красивости нет. Уж поверьте, через меня прошло много программ всяческих для пожарных и инженерных систем. Когда человек сидит несколько часов подряд перед монитором, следя за системами, он понятное дело будет смотреть не в монитор, а куда угодно еще, где поинтереснее и только яркая сигнализация позволяет привлечь внимание =)


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Февраль 28, 2014, 11:25
Дело именно в инстинктивности. В частности это гуи к испытательному стенду. То, что юзер ЗАМЕТИТ что там жизнь на мониторе - это полдела. Через меня тоже прошло много ПО. Я считаю что любое гуи должно быть интуитивно понятно. Вы когда берёте пульт ДУ в руки от нового телевизора вы в инструкцию на пульт не заглядываете. Когда я начинал использовать андроид - я ни разу не залез ни в инет, ни в гугл с поиском "Как в андроиде сделать точку доступа вайфай и использовать его как GPRS модем" или с подобными вопросами. Практически всё интуитивно понятно (не ради рекламы).

Сейчас я работаю на предприятии, где, если юзер не понял что-то, то требуют инструкцию.... а инструкция по ЕСПД... а это вообще ад. Поэтому (да и не только по этому) я стараюсь писать так своё по, чтобы меня ни кто ни когда не спрашивал "Что это за кнопка?" или "Что означает эта мигающая цифра".

В частности.... горит черным "32". Потом моргнуло... стало красным и опять черным. Что это за моргание? причем КРАСНЫМ! Красное ассоциируется с аварией, с пожаром... хватай чемоданы, вокзал отходит. Превышен порог? Перегрев аппаратуры? Авария обмена? Потеря связи? Нужно залезть в РЭ и посмотреть. А когда флип упадет.... или табличка перевернётся - тут больше понятно.... что значение обновилось.



ps Можно сделать как в старых табло на жд вокзалах и в аэропортах. Там табло были такие.... из матриц точками.... при обновлении можно точками рамдомно промелькнуть и зажечь новое значение.
pps можно из центра стрелкой промаргнуть, типа такого (http://www.youtube.com/watch?v=nIVWGB-tUsc)


Название: Re: Виджет для отображения цифр
Отправлено: OKTA от Февраль 28, 2014, 11:33
Судя по первому посту, вопрос был именно в том, чтобы пользователь обратил внимание на изменение... Раз нет, то ок


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Февраль 28, 2014, 11:36
По ЕСПД документация делается легко и просто :) И писать документацию всё равно придётся, даже если вы разрабатываете для предприятия.

PS Никто не мешает внизу вести лог или ещё что-то. Просто больше 5 мигающих элементов на интерфейсе это уже к лору, косоглазие править :D


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Февраль 28, 2014, 11:57
Судя по первому посту, вопрос был именно в том, чтобы пользователь обратил внимание на изменение... Раз нет, то ок
нет. воброс был
Цитировать
Нужен такой, чтобы было видно обновление
Нужно чтобы было видно именно обновление. А мигать красны я начну, когда параметр уйдет за пороги. Будет видно и изменение (с 32 на 31 например), и обновление(флип), и аварию(красным мигать).

ps Вобще спор ни о чем. флуд. Я высказал свое мнение по поводу "а для чего". Я ни кого переубеждать или учить не собираюсь. если кому-то нравиться обновление показать красным миганием - да пожалуйста, мигайте ;)

Лучше по теме подскажите.... есть например тэг иконок (http://www.iconsearch.ru/tags/), где можно на свои небольшие поделки иконки качественные получить. Есть подобный ресурс по виджетам Qt или QML? Видел где-то набор готовых QML виджетов..... там всякие спидометры, индикаторы...


Название: Re: Виджет для отображения цифр
Отправлено: OKTA от Февраль 28, 2014, 12:19
Может быть это? http://qt-project.org/wiki/Qt_Quick_Components
Другого и не знаю ничего готового по QML, - спидометр это лишь один из примеров).
В принципе, самому сделать переворачивающиеся иконочки в qml не сложно - там все инструменты для этого есть.


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Февраль 28, 2014, 14:58
Если у вас есть реальный алгоритм работы этого чуда и вы видите его пред внутренним взором и можете излить его на бумагу, тогда я возьмусь это чудо реализовать.

PS не "ну эээ он должен там мигать чем то", а "при смене числа барабан двигается туда то, стрелочка туда то и так то" :D


Название: Re: Виджет для отображения цифр
Отправлено: OKTA от Февраль 28, 2014, 17:19
Если у вас есть реальный алгоритм работы этого чуда и вы видите его пред внутренним взором и можете излить его на бумагу, тогда я возьмусь это чудо реализовать.

PS не "ну эээ он должен там мигать чем то", а "при смене числа барабан двигается туда то, стрелочка туда то и так то" :D

на QML?)


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Февраль 28, 2014, 19:52
Qml тут упомянули только в развитии темы. А так разговор про QLabel шёл :D

PS в QML не силён ^.^


Название: Re: Виджет для отображения цифр
Отправлено: OKTA от Февраль 28, 2014, 20:59
А вот простейший спиннер из примеров  8)
Простой и некрасивый, но работает однако  8)

Код:
import QtQuick 1.0

Image {
    property alias model: view.model
    property alias delegate: view.delegate
    property alias currentIndex: view.currentIndex
    property real itemHeight: 30

    source: "spinner-bg.png"
    clip: true

    PathView {
        id: view
        anchors.fill: parent

        pathItemCount: height/itemHeight
        preferredHighlightBegin: 0.5
        preferredHighlightEnd: 0.5
        highlight: Image { source: "spinner-select.png"; width: view.width; height: itemHeight+4 }
        dragMargin: view.width/2

        path: Path {
            startX: view.width/2; startY: -itemHeight/2
            PathLine { x: view.width/2; y: view.pathItemCount*itemHeight + itemHeight }
        }
    }

    Keys.onDownPressed: view.incrementCurrentIndex()
    Keys.onUpPressed: view.decrementCurrentIndex()
}


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Февраль 28, 2014, 22:14
Верес - чудный персонаж! В очередной раз увидел твой ответы.... и в очередной раз вижу как ты, ну просто тупишь не понимаешь о чем речь. Может пора уже поумнеть... или "горбатого могила исправит". Я редко захожу на этот форум, и постоянно натыкаюсь на тебя, ну в каждой бочке затычка теме постишь. И постоянно вижу твои отжиги. Заглянул в твой профиль - ггггг "Статус:    Джедай : наставник для всех". Какой ты к черту наставник? Наставники так себя не ведут. Ты  должен, как говорил Преображенский, "Молчать и слушать! Молчать и слушать!". А ты .... ну хоть бы по делу говорил.... ну не попадешь в ноты, ну да ладно.. подрастёшь научишься. Но мало того что в тему попасть не можешь, так ещё тут какой-то стёб устраиваешь...

Вот ответь мне -- слов не трать!
Цитировать
не "ну эээ он должен там мигать чем то", а "при смене числа барабан двигается туда то, стрелочка туда то и так то"
ты с какой целью это написал? Это уже даже не флуд, а тролинг. Тебе доставляет удовольствие тролить? Ты - ТРОЛЬ!
Твоё сообщение как-то решает проблему? Это даёт мне ссылку на сборник опенсорсных виджетов?

Цитировать
По ЕСПД документация делается легко и просто Улыбающийся И писать документацию всё равно придётся, даже если вы разрабатываете для предприятия.
Опять брякнул в сторону, не по теме. Ну не тебе меня учить как на моем предприятии пишется документация. И не в этой теме. Ты знаешь специфику нашего предприятия? Требования к документации на нашем предприятии? Пожелания наших пользователей? Или требования нашего начальства? Одно дело написать для галочки по ЕСПД голое РЭ, в котором продукт описан в 2-х словах (к чему я стремлюсь). Другое дело расшифровывать каждый виджет и каждое его мигание и погрязнуть в бумажной рутине, а потом юзер не разберёт/не прочитает/не поймёт (нужное подчеркнуть) РЭ и доложит - программа не работает, сложная, ей невозможно пользоваться.

Цитировать
Никто не мешает внизу вести лог
Какой лог? что ты там будешь писать? раз в секунду "Значение изменилось на 32". И таких строчек в минуту 60? а если два виджета, то 120? И как будет видно что строчка изменилась? В области видимости лога будет 10 строк с надписью "Значение изменилось на 32". Обновилось значение, добавилась новая строка и в  области видимости лога будет 10 строк с надписью "Значение изменилось на 32". Как пользователь увидит что значение изменилось? Можно в строку время добавить или порядковый номер. Но это не наглядно. Это во первых. Во вторых.... Я говорил где этот виджет будет использоваться? Может я собираюсь этот виджет растянуть на монитор в 52" и повесить над цехом. Кто там логи будет видеть или читать?

После 1-го твоего ответа я подумал... "ну как обычно, ни чего по делу. куда-то в сторону, умничает. "кривоглазость", "лор"... ахирел. Ну да и ладно. Игнорю. Всё в этом мире меняется, а Верес - всё такой же... мимо темы".

После 2-го ответа...  думаю... а не ответить ли? пока думал прилетает новый шедевр, контрольный выстрел.. и я не удержался
Цитировать
Qml тут упомянули только в развитии темы. А так разговор про QLabel шёл
Если предыдущие твои выбросы... это какой-то флуд, стёб..... То вот это вообще - шедевр тупизны.
Какой QLabel? Я просил QLabel? Я просил виджет, для отображения цифр. Если бы я сказал "Как отобразить цифру?", мне бы ответили "QLabel!", поэтому я в вопросе сразу сказал, что нужен не просто QLabel. Это может быть BepecLabel, JuvfLabel, FlipLabel.... Это вообще может быть MyClass. Ты почитай ещё раз вопрос.

Цитировать
Если у вас есть реальный алгоритм работы этого чуда и вы видите его пред внутренним взором и можете излить его на бумагу, тогда я возьмусь это чудо реализовать.
Вот тут да, тут зачет.... по теме. +1. Но за издёвки, типа "чудо" -1. Чудес мне не нужно, мне нужен виджет. но за "Если у вас есть реальный алгоритм работы" -10. Опять ступил. Ну что ты будешь делать, ну как не брякнет, так....  :'(
Я же в вопросе писал. Или ты вопросов не читаешь, а с середины темы включаешься. репост, спэшал4ю
Цитировать
табличка, на ней цифра, при обновлении цифры табличка разворачивается вокруг своей оси на 180° и на другой стороне новое значение.
Что в этом алгоритме не понятно? А ты напиши такой виджет, раз обещал!  Мужик сказал - мужик сделал. Вызов метода setText() должен переворачивать табличку. Должно быть свойство вокруг какой оси крутить гор или верт. Цвета фона и текста, шрифт, обрамление, чтобы край было видно. Ну и совсем было бы кошерно, если бы фон был... какойнить на реальный похож.

Цитировать
Например можно отобразить в виде барабанов, как на механических одометрах.
- вот ещё алгоритм. Тут что не понятно. Не знаешь как выглядит одометр? Ну так спроси, погугли или, если тебе это не интересно, пройди мимо. Вот тут (http://ru.clipartlogo.com/premium/detail/odometer_16397386.html) можно посмотреть на виджиты одометров ну или тут (http://lmgtfy.com/?q=%D0%BE%D0%B4%D0%BE%D0%BC%D0%B5%D1%82%D1%80)? Напиши такой виджет? 

Да хотя бы перекидное табло (http://ru.wikipedia.org/wiki/%D0%9F%D0%B5%D1%80%D0%B5%D0%BA%D0%B8%D0%B4%D0%BD%D0%BE%D0%B5_%D1%82%D0%B0%D0%B1%D0%BB%D0%BE). Это тоже для тебя чудо? И не понятен алгритм его работы?

Swa меня понял, носом ткнул. Ему респект.
OKTA .... не сразу понял.. пояснил подробнее... даже объяснил зачем это мне... он дал мне ссылку и "Другого и не знаю ничего готового по QML". И на этом спасибо. Хоть ответил. пока писал ото ответ, он мне уже даже код кинул, ну вообще респект!!!

ps Верес, ты пройдись по теме, посмотри что ты дельного сказал. сделай выводы. Ты же себя позоришь, наставник.

pps Вот ещё алгоритм: при вызове setText() старый текст растворяется в дым, в из этого дыма образуется новый текст.


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Февраль 28, 2014, 23:25
Ну по порядку.
Джедай наставник для всех  - это показатель количества сообщений и ничего более. Так форум устроен :)

1) См. п. 5 Именно поэтому я уточнил алгоритм работы. Как ни странно я постоянно сталкиваюсь с тем, что люди хотят половину от одного, половину от второго.

2) Я лично делал документацию по ЕСПД от 0 до 100% по гос заказу. И поверь - нигде ты не встретишь таких внимательных и придирчивых представителей заказчика. (одну систему в СОЧИ что стоит сейчас ;) )

3) Лог будет во 1 (ха ха) вести лог. По которому можно посмотреть что было минуту назад, две минуты назад, когда ты прыгнул, когда ты присел, когда ты хлопнул, когда ты делал что угодно. Если у тебя есть привязка ко времени. И это удобно для испытаний. Ну и во вторую очередь он будет показывать активность стенда. Любую :P И даже я со своей близорукостью на 52" монике с 10 метров увижу, что:
             а) ошибок нет (типа красного нет);
             б) всё работает в штатном режиме, а не зависло.

4) Бред и придирка к словам :)

5) Я вчера обсуждал с заказчиком как должна выглядеть кнопка. Обычная кнопка. И что тень у неё должна быть тёмненькой, но не очень. И чтобы она была яркой, но черной. Я вам предложил на бесплатной основе реализовать компонент. Не вижу тут ничего предосудительного.

6) См. п. 5 - я отношусь как к заказчику, а не "я вот как то так сделал и пофиг, ты ж мне денег не платишь" :) ТЗ - первое дело.

7) Cм. п. 5. - я не видел одометров. Я даже честное слово сейчас не знаю что это обозначает. Логика мне подсказывает что это барабанный spin. :D

8) C дымом интересно. Я б взялся попробовать. Видел пару таких реализаций.

PS Да, я чудный персонаж. Да, я многого не знаю. Да, я стараюсь помочь в меру своего интереса. Да, я легко отношусь к словам :D Ну и конечно прими мои извинения за то, что мои комментарии вызывают у тебя такие чувства.

PPS избавиться от меня в своих темах просто - попроси и я не буду в них писать :D чОрный список открыт ^.^

PPPS не удержался. Когда сообщение проверял на орфографию, перечитал и твоё. Наставник который не слушает вопросы учеников или гений (что раз в столетие), или незаинтересованный в обучении человек :D


Название: Re: Виджет для отображения цифр
Отправлено: OKTA от Март 01, 2014, 00:18
заметил, что что-то к концу февраля - началу марта обострились отношения некоторых участников форума - жду не дождусь, когда будет драка  ;D ;D ;D а то пока только на словах схлестываются  ;D ;D ;D


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Март 01, 2014, 00:45
Веснааа :)


Название: Re: Виджет для отображения цифр
Отправлено: Igors от Март 02, 2014, 09:01
Например можно отобразить в виде барабанов, как на механических одометрах. Или табличка, на ней цифра, при обновлении цифры табличка разворачивается вокроуг своей оси на 180° и на другой стороне новое значение.

Где в инете можно подобными виджетами разжиться?
Если разжиться не удалось - почему бы не сделать самому. Тот же поворот вокруг оси - ничего сложного. Можно добавить игру бликов во время поворота. Превращается в дым и собирается обратно - ну тут придется больше повозиться, но алгоритм хорошо известен, если интересно - расскажу


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Март 02, 2014, 11:35
Мне про дым напишите если можно. Точнее про его генерацию. А то поинтересовался, но гугль больше про карандаш и фотошоп выдаёт.


Название: Re: Виджет для отображения цифр
Отправлено: Igors от Март 02, 2014, 12:02
Мне про дым напишите если можно. Точнее про его генерацию. А то поинтересовался, но гугль больше про карандаш и фотошоп выдаёт.
Есть так называемый "розовый" шум (pink noise). В отличие от обычного "белого" шума (rand()) розовый коррелирован/связан. Напр случайное значение в точке 0.6, какое значение в соседней точке? Для белого абсолютно любое (на то и белый), а вот для розового - тоже случайное, но близкое к соседнему, напр 0.5 или 0.7. Придумал это Ken Perlin, за что (совершенно заслуженно) получил шнобелевскую премию. Гуглите "Perlin Noise" или просто "Noise2D" - исходников море. Теперь как "размазать букву" в дым, ну это тоже уже лет 20 известно, псевдокод
Код
C++ (Qt)
// базовая ф-ция, найдете в инете
void Noise2D( float x, float y,   // точка (пиксель) в которой считаем noise
                    float * nx, float * ny )  // значения шума
 
// цикл по всем пыкселям
for (int y = 0; y < height; ++y) {
for (int x = 0; x < width; ++x) {
  Noise2D(x, y, &dx, &dy);
  int x2 = (x + dx) * amplitude;
  int y2 = (y + dy) * amplitude;
// clip x2, y2 to width, height
  dstImage[x, y] = srcImage[x2, y2];
}
}
Т.е. каждый пыксель берется из исходного со смещениями которые задаются фрактальным шумом. Чем больше amplitude - тем больше "размывается". Вот и все


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Март 02, 2014, 12:25
Угу. Понял, уже применял подобное только в обработке данных :P Благодарю.


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Март 04, 2014, 07:16
чтоб темы не плодить.... тут доп вопрос задам.
Вот есть набор  (http://qwt.sourceforge.net/controlscreenshots.html)красивых виджетов для Qt.
Кто нибудь знает, где можно разжиться подобным набором?


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Март 04, 2014, 07:40
Цитировать
Qwt


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Март 04, 2014, 10:54
Цитировать
Qwt
Опять ни чего не пойму. К чему твои посты? Я спросил "Где взять подобные виджеты?" и дал ссылку на Qwt. Ты мне отвечаешь "Qwt".  ???


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Март 04, 2014, 10:57
Qwt и есть библиотека этих самых виджетов, которые Qwt. И чтобы получить виджеты Qwt нужно просто скачать Qwt и установить Qwt. :)

PS и да, если совсем всё плохо - вы приводите ссылку как раз на её документацию. На уровень выше её можно будет скачать :P


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Март 04, 2014, 11:14
Цитировать
Вот есть набор красивых виджетов для Qt.
Кто нибудь знает, где можно разжиться подобным набором?
Дак я его и использую. Скачал, установил и уж пользую много лет. Вопрос не "Как их использовать/установить?" а "где можно разжиться подобным набором?"

Есть ли ещё подобные библиотеки? Где их можно скачать?


Название: Re: Виджет для отображения цифр
Отправлено: OKTA от Март 04, 2014, 11:23
;D http://qt-apps.org/index.php?xcontentmode=4298


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Март 04, 2014, 11:49
/offtop Урок русского языка
чтоб темы не плодить.... тут доп вопрос задам.
Вот есть набор  (http://qwt.sourceforge.net/controlscreenshots.html)красивых виджетов для Qt.
Кто нибудь знает, где можно найти подобные наборы разжиться подобным набором?


Название: Re: Виджет для отображения цифр
Отправлено: juvf от Март 04, 2014, 12:23
;D http://qt-apps.org/index.php?xcontentmode=4298
Спасибо!!! Там есть AnalogWidgets - то, что нужно.  Кстати, там и флипКаунтер есть, это как раз перекидное табло, только бы оно с 32 на 32 флип делало бы - вообще зачет.

/offtop Урок русского языка
чтоб темы не плодить.... тут доп вопрос задам.
Вот есть набор  (http://qwt.sourceforge.net/controlscreenshots.html)красивых виджетов для Qt.
Кто нибудь знает, где можно найти подобные наборы разжиться подобным набором?
Какой урок?  ;D. разжиться (http://dic.academic.ru/dic.nsf/dic_synonims/262618/%D1%80%D0%B0%D0%B7%D0%B6%D0%B8%D1%82%D1%8C%D1%81%D1%8F#sel=5:1,5:2) - достать, надыбать, обогатиться, отхватить, раздобыть, добыть....
Я не спрашиваю "где найти подобные наборы", я спрашиваю где "разжиться подобным набором" (хотя в данном контексте это одно и тоже. см. значение слова разжиться). Я не спрашиваю, "где найти ЭТОТ набор", я спрашиваю "где разжиться ПОДОБНЫМ набором", разжиться т.е. где/как получить подобный набор, от куда скачать, у кого спросить.
подобным - не значит этим.

Ок, спешал4ю, перефразирую вопрос:
Вот есть в библиотеке Qwt набор красивых готовых виджетов для Qt. Я использую эти виджеты в своих приложениях. Очень удобно, не нужно тратить время на их создание и они дополняют набор стандартных Qt виджетов.
Кто нибудь знает, где можно разжиться подобным набором? Не этим же, не Qwt. На Qwt я дал ссылку. А где можно разжиться подобным, похожим, аналогичным набором виджетов как в Qwt?


Название: Re: Виджет для отображения цифр
Отправлено: Bepec от Март 04, 2014, 12:27
/offtop спасибо. Превосходно, я рад. Если бы такая манера написания сообщений была бы у вас всегда, не возникало бы недоразумений.