Russian Qt Forum
Ноябрь 26, 2024, 18:31
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
Выбор сигнала QSpinBox
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Выбор сигнала QSpinBox (Прочитано 10240 раз)
Wizard
Гость
Выбор сигнала QSpinBox
«
:
Октябрь 01, 2013, 01:51 »
Я - новичок, и ни разу не работал с формами. Собственно, поэтому и выбрал Qt. Появилась необходимость использовать QSpinBox, но перед тем, как задать параметры для SpinBox, необходимо перейти к слоту и выбрать сигнал:
editingFinished()
destroyed()
destroyed(QObject*)
.............................
Что значит каждый из этих типов сигналов?
Мне нужно задать ограничение на верхнее значение в QSpinBox, чтобы верхняя кнопка нажималась до определённого значения, а в окошке при достижении его значение не превышало максимальное.
К примеру, в корзине 30 яблок, укажите, сколько съел Навальный. Выбрал 30, и выше никак. В окне максимум цифра 30, ниже жмётся кнопка, выше - нет. Вы должны понять.
Дайте, пожалуйста, источник, где расписано детально про каждый тип сигналов не только в SpinBox, но и в остальных прокрутках, окошках и других виджетах.
Заранее спасибо!
«
Последнее редактирование: Октябрь 01, 2013, 01:53 от Wizard
»
Записан
Bepec
Гость
Re: Выбор сигнала QSpinBox
«
Ответ #1 :
Октябрь 01, 2013, 07:02 »
Qt Assistent. Он поставляется вместе с Qt. Открываете, набираете название вашего сигнала, потом выбираете к какому классу он относится (окошко вылезет) и после спокойно читайте подробное описание условий его вызова..
Записан
Serr500
Гость
Re: Выбор сигнала QSpinBox
«
Ответ #2 :
Октябрь 01, 2013, 08:23 »
На кой здесь сигналы? У QSpinBox уже есть эта функциональность. У него есть два свойства - maximum и minimum, которые и ограничивают диапазон ввода. Установите их в дизайнере или методами setMaximum, setMinimum и будет вам счастье.
Цитата: Wizard от Октябрь 01, 2013, 01:51
Я - новичок, и ни разу не работал с формами. Собственно, поэтому и выбрал Qt.
1) В Qt есть отличная справка, которую можно прочитать в QtAssistant и QtCreator, правда, она на английском.
2) Если хотите на русском, возьмите книжку Макса Шлее или Марка Саммерфилда, там очень хорошо всё расписано.
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Выбор сигнала QSpinBox
«
Ответ #3 :
Октябрь 01, 2013, 11:44 »
Цитата: Wizard от Октябрь 01, 2013, 01:51
Я - новичок, и ни разу не работал с формами. Собственно, поэтому и выбрал Qt.
что-то не вижу причинно-следственной связи. каким образом из того, что человек — новичок, следует то, что ему необходимо начинать познавать «окошки» с Qt?
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Wizard
Гость
Re: Выбор сигнала QSpinBox
«
Ответ #4 :
Октябрь 01, 2013, 14:13 »
Цитата: kambala от Октябрь 01, 2013, 11:44
Цитата: Wizard от Октябрь 01, 2013, 01:51
Я - новичок, и ни разу не работал с формами. Собственно, поэтому и выбрал Qt.
что-то не вижу причинно-следственной связи. каким образом из того, что человек — новичок, следует то, что ему необходимо начинать познавать «окошки» с Qt?
Ты тролль что ли? Причинно-следственная связь в том, что формы и Qt между собой синонимируют. MS VS без интеграции туда Qt этого не даст, а C# я не знаю.
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Выбор сигнала QSpinBox
«
Ответ #5 :
Октябрь 01, 2013, 18:42 »
когда новички бросаются «троллями», это не очень хороший знак.
я задал абсолютно нормальный вопрос, потому что не понял, каким образом твой выбор пал на Qt. про язык, на котором ты пишешь, в твоем первом сообщении не сказано, но, исходя из последнего, это, видимо, С++. помимо Qt есть и другие графические библиотеки на С++, например WxWidgets. а можно вообще использовать WinAPI или MFC (но лучше не нужно), при чем для первого можно писать даже на чистом С.
в последнее время на этот форум приходит немало новичков, которые либо С++ видят чуть ли не впервые в жизни, а уже хотят создавать GUI приложения, либо думают, что умеют писать на С++, имея опыт написания программ лишь в структурном (не-ООП) стиле, в лучшем случае слышавших что-то про классы. надеюсь, что ты не относишься ни к одним из перечисленных категорий.
при чем тут студия — тоже неясно. она является средой разработки для разных языков и технологий, а Qt — это набор С++ библиотек. QtCreator — это тоже среда разработки для разных языков, но никто не обязывает использовать именно ее для написания Qt-приложений. в студию (особенно не-экспресс версию) Qt интегрируется достаточно легко.
зная С++, в другие С-подобные языки (типа C#) «войти» совсем несложно. а вот Java вообще не была упомянута…
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Wizard
Гость
Re: Выбор сигнала QSpinBox
«
Ответ #6 :
Октябрь 05, 2013, 01:29 »
Цитата: kambala от Октябрь 01, 2013, 18:42
когда новички бросаются «троллями», это не очень хороший знак.
я задал абсолютно нормальный вопрос, потому что не понял, каким образом твой выбор пал на Qt. про язык, на котором ты пишешь, в твоем первом сообщении не сказано, но, исходя из последнего, это, видимо, С++. помимо Qt есть и другие графические библиотеки на С++, например WxWidgets. а можно вообще использовать WinAPI или MFC (но лучше не нужно), при чем для первого можно писать даже на чистом С.
в последнее время на этот форум приходит немало новичков, которые либо С++ видят чуть ли не впервые в жизни, а уже хотят создавать GUI приложения, либо думают, что умеют писать на С++, имея опыт написания программ лишь в структурном (не-ООП) стиле, в лучшем случае слышавших что-то про классы. надеюсь, что ты не относишься ни к одним из перечисленных категорий.
при чем тут студия — тоже неясно. она является средой разработки для разных языков и технологий, а Qt — это набор С++ библиотек. QtCreator — это тоже среда разработки для разных языков, но никто не обязывает использовать именно ее для написания Qt-приложений. в студию (особенно не-экспресс версию) Qt интегрируется достаточно легко.
зная С++, в другие С-подобные языки (типа C#) «войти» совсем несложно. а вот Java вообще не была упомянута…
Я имею опыт написания программ без использования ООП, работа с классами знакома на уровне прочтения нескольких книг за лето и разбору примеров оттуда же. Приходилось работать с расширениями С/С++ - CUDA, OpenMP.
Сейчас по программе компьютерная графика, где надо написать 9 программ, начиная от поворота отрезка вокруг точки и заканчивая 3D-графикой. Также есть трассировка лучей, дерево Пифагора и ещё какая-то шляпа. С формами прежде никогда не работал. Да, это минус, но нас не учат такому, а в MS VS - сказали - с формами неудачная затея получилась, и не стоит в общем.
Мне вот нужно работать постоянно с QSpinBox, а я не знаю всей скрытой кучи возможности от этого виджета: начиная от визуальных качеств (заливка, цвет кнопок и пр.) и заканчивая извлечением данных из формочки и синхронизацией данных с другими формочками (к примеру, при нажатии кнопки SpinBox'а чтобы полоса прокрутки двигалась). В книгах такого нету, там всё примитивно, подробного нигде не нашёл.
Остаётся каждый день рыть форумы, ответы Mail.ru, Хабр и кучу источников, хоть что-то сдержащих о Qt'е. Что бы Вы посоветовали? Заранее благодарен.
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Выбор сигнала QSpinBox
«
Ответ #7 :
Октябрь 05, 2013, 02:59 »
Цитата: Wizard от Октябрь 05, 2013, 01:29
В книгах такого нету, там всё примитивно, подробного нигде не нашёл.
в книгах Саммерфилд/Бланшетт и Шлее это есть. также документация Qt написана очень качественно и понятно, есть даже русская ее версия.
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Wizard
Гость
QSpinBox
«
Ответ #8 :
Октябрь 05, 2013, 04:42 »
Цитата: kambala от Октябрь 05, 2013, 02:59
Цитата: Wizard от Октябрь 05, 2013, 01:29
В книгах такого нету, там всё примитивно, подробного нигде не нашёл.
в книгах Саммерфилд/Бланшетт и Шлее это есть. также документация Qt написана очень качественно и понятно, есть даже русская ее версия.
У меня есть все эти книги. Я их перерыл, как сапёр в Stronghold Crusader. Передо мной стоит задача наращивать или понижать значение координат с помощью QSpinBox.
Как выяснил {на Хабре!!!}, считывание значения представляет из себя нечто похожее на:
a = ui -> spinBox -> value();
Ну так и где же хоть что-то, похожее на это в книгах Саммерфилда и Шлее? Нету нихрена!!!
Я не знаю, как мне организовать структуру проекта: что должно содержаться в файле main.cpp, что в файле dialog.h, что в файле dialog.cpp, где мне реализовывать алгоритм (для дальнейших задач) - к примеру трассировки лучей: в main.cpp или в dialog.cpp? И прочие детали проекта.
Спасибо за терпение (ведь я тупарь, ибо не задавал бы один и тот же вопрос на форуме 1000500 раз) и понимание!!!
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: QSpinBox
«
Ответ #9 :
Октябрь 05, 2013, 09:22 »
Цитата: Wizard от Октябрь 05, 2013, 04:42
Как выяснил {на Хабре!!!}, считывание значения представляет из себя нечто похожее на:
a = ui -> spinBox -> value();
Ну так и где же хоть что-то, похожее на это в книгах Саммерфилда и Шлее? Нету нихрена!!!
Представим себе что Вы пишете собственное UI. Тут обычно начинают фыркать, вспоминать про велосипеды и.т.п. Ну а все же - спиннер был бы класс. Конечно натыкали бы в него геттеров/сеттеров, как бы их назвали? Что-то типа GetValue/SetValue. Ну и в Qt почти так же. Но стопудово что эти методы должны быть, иначе нафиг нужен спиннер у которого нельзя ни установить ни прочитать значение?
Поэтому такие вещи очевидны для человека с опытом (пусть и небольшим) и упоминать о них в книгах излишне. А если опыта (пока) нет - надо набираться, а не изливать свое раздражение на форуме
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Выбор сигнала QSpinBox
«
Ответ #10 :
Октябрь 05, 2013, 11:31 »
Цитата: Wizard от Октябрь 05, 2013, 04:42
У меня есть все эти книги. Я их перерыл, как сапёр в Stronghold Crusader. Передо мной стоит задача наращивать или понижать значение координат с помощью QSpinBox.
Как выяснил {на Хабре!!!}...
про документацию я уже сказал. когда тебя интересует, на что способен класс, надо открывать именно ее.
а про саперов не надо тут. страницы во вложениях я нашел за считанные секунды.
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
lit-uriy
Джедай : наставник для всех
Offline
Сообщений: 3880
Re: Выбор сигнала QSpinBox
«
Ответ #11 :
Октябрь 05, 2013, 12:16 »
Есть документация по Qt частично переведённая на русский:
http://www.doc.crossplatform.ru/qt/
рекомендую там смотреть документацию по Qt 4.6 и Qt 4.5 (по тех. причинам более свежие версии отображаются кривовато и объём перевода в них меньше)
В основном переведены обзорно-ознакомительные статьи, а также описания некоторых классов.
Рекомендую изучить
учебное пособие
от старой версии, оно весьма поучителено для новичков
П.С.
Раздел "Подробное описание" документации по QSpinBox-у
Записан
Юра.
Wizard
Гость
Re: Выбор сигнала QSpinBox
«
Ответ #12 :
Октябрь 05, 2013, 15:09 »
Цитата: lit-uriy от Октябрь 05, 2013, 12:16
Есть документация по Qt частично переведённая на русский:
http://www.doc.crossplatform.ru/qt/
рекомендую там смотреть документацию по Qt 4.6 и Qt 4.5 (по тех. причинам более свежие версии отображаются кривовато и объём перевода в них меньше)
В основном переведены обзорно-ознакомительные статьи, а также описания некоторых классов.
Рекомендую изучить
учебное пособие
от старой версии, оно весьма поучителено для новичков
П.С.
Раздел "Подробное описание" документации по QSpinBox-у
Спасибо всем!
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...