Название: Выбор сигнала QSpinBox Отправлено: Wizard от Октябрь 01, 2013, 01:51 Я - новичок, и ни разу не работал с формами. Собственно, поэтому и выбрал Qt. Появилась необходимость использовать QSpinBox, но перед тем, как задать параметры для SpinBox, необходимо перейти к слоту и выбрать сигнал:
editingFinished() destroyed() destroyed(QObject*) ............................. Что значит каждый из этих типов сигналов? Мне нужно задать ограничение на верхнее значение в QSpinBox, чтобы верхняя кнопка нажималась до определённого значения, а в окошке при достижении его значение не превышало максимальное. К примеру, в корзине 30 яблок, укажите, сколько съел Навальный. Выбрал 30, и выше никак. В окне максимум цифра 30, ниже жмётся кнопка, выше - нет. Вы должны понять. Дайте, пожалуйста, источник, где расписано детально про каждый тип сигналов не только в SpinBox, но и в остальных прокрутках, окошках и других виджетах. Заранее спасибо! Название: Re: Выбор сигнала QSpinBox Отправлено: Bepec от Октябрь 01, 2013, 07:02 Qt Assistent. Он поставляется вместе с Qt. Открываете, набираете название вашего сигнала, потом выбираете к какому классу он относится (окошко вылезет) и после спокойно читайте подробное описание условий его вызова..
Название: Re: Выбор сигнала QSpinBox Отправлено: Serr500 от Октябрь 01, 2013, 08:23 На кой здесь сигналы? У QSpinBox уже есть эта функциональность. У него есть два свойства - maximum и minimum, которые и ограничивают диапазон ввода. Установите их в дизайнере или методами setMaximum, setMinimum и будет вам счастье.
Я - новичок, и ни разу не работал с формами. Собственно, поэтому и выбрал Qt. 1) В Qt есть отличная справка, которую можно прочитать в QtAssistant и QtCreator, правда, она на английском.2) Если хотите на русском, возьмите книжку Макса Шлее или Марка Саммерфилда, там очень хорошо всё расписано. Название: Re: Выбор сигнала QSpinBox Отправлено: kambala от Октябрь 01, 2013, 11:44 Я - новичок, и ни разу не работал с формами. Собственно, поэтому и выбрал Qt. что-то не вижу причинно-следственной связи. каким образом из того, что человек — новичок, следует то, что ему необходимо начинать познавать «окошки» с Qt?Название: Re: Выбор сигнала QSpinBox Отправлено: Wizard от Октябрь 01, 2013, 14:13 Я - новичок, и ни разу не работал с формами. Собственно, поэтому и выбрал Qt. что-то не вижу причинно-следственной связи. каким образом из того, что человек — новичок, следует то, что ему необходимо начинать познавать «окошки» с Qt?Название: Re: Выбор сигнала QSpinBox Отправлено: kambala от Октябрь 01, 2013, 18:42 когда новички бросаются «троллями», это не очень хороший знак.
я задал абсолютно нормальный вопрос, потому что не понял, каким образом твой выбор пал на Qt. про язык, на котором ты пишешь, в твоем первом сообщении не сказано, но, исходя из последнего, это, видимо, С++. помимо Qt есть и другие графические библиотеки на С++, например WxWidgets. а можно вообще использовать WinAPI или MFC (но лучше не нужно), при чем для первого можно писать даже на чистом С. в последнее время на этот форум приходит немало новичков, которые либо С++ видят чуть ли не впервые в жизни, а уже хотят создавать GUI приложения, либо думают, что умеют писать на С++, имея опыт написания программ лишь в структурном (не-ООП) стиле, в лучшем случае слышавших что-то про классы. надеюсь, что ты не относишься ни к одним из перечисленных категорий. при чем тут студия — тоже неясно. она является средой разработки для разных языков и технологий, а Qt — это набор С++ библиотек. QtCreator — это тоже среда разработки для разных языков, но никто не обязывает использовать именно ее для написания Qt-приложений. в студию (особенно не-экспресс версию) Qt интегрируется достаточно легко. зная С++, в другие С-подобные языки (типа C#) «войти» совсем несложно. а вот Java вообще не была упомянута… Название: Re: Выбор сигнала QSpinBox Отправлено: Wizard от Октябрь 05, 2013, 01:29 когда новички бросаются «троллями», это не очень хороший знак. Я имею опыт написания программ без использования ООП, работа с классами знакома на уровне прочтения нескольких книг за лето и разбору примеров оттуда же. Приходилось работать с расширениями С/С++ - CUDA, OpenMP.я задал абсолютно нормальный вопрос, потому что не понял, каким образом твой выбор пал на Qt. про язык, на котором ты пишешь, в твоем первом сообщении не сказано, но, исходя из последнего, это, видимо, С++. помимо Qt есть и другие графические библиотеки на С++, например WxWidgets. а можно вообще использовать WinAPI или MFC (но лучше не нужно), при чем для первого можно писать даже на чистом С. в последнее время на этот форум приходит немало новичков, которые либо С++ видят чуть ли не впервые в жизни, а уже хотят создавать GUI приложения, либо думают, что умеют писать на С++, имея опыт написания программ лишь в структурном (не-ООП) стиле, в лучшем случае слышавших что-то про классы. надеюсь, что ты не относишься ни к одним из перечисленных категорий. при чем тут студия — тоже неясно. она является средой разработки для разных языков и технологий, а Qt — это набор С++ библиотек. QtCreator — это тоже среда разработки для разных языков, но никто не обязывает использовать именно ее для написания Qt-приложений. в студию (особенно не-экспресс версию) Qt интегрируется достаточно легко. зная С++, в другие С-подобные языки (типа C#) «войти» совсем несложно. а вот Java вообще не была упомянута… Сейчас по программе компьютерная графика, где надо написать 9 программ, начиная от поворота отрезка вокруг точки и заканчивая 3D-графикой. Также есть трассировка лучей, дерево Пифагора и ещё какая-то шляпа. С формами прежде никогда не работал. Да, это минус, но нас не учат такому, а в MS VS - сказали - с формами неудачная затея получилась, и не стоит в общем. Мне вот нужно работать постоянно с QSpinBox, а я не знаю всей скрытой кучи возможности от этого виджета: начиная от визуальных качеств (заливка, цвет кнопок и пр.) и заканчивая извлечением данных из формочки и синхронизацией данных с другими формочками (к примеру, при нажатии кнопки SpinBox'а чтобы полоса прокрутки двигалась). В книгах такого нету, там всё примитивно, подробного нигде не нашёл. Остаётся каждый день рыть форумы, ответы Mail.ru, Хабр и кучу источников, хоть что-то сдержащих о Qt'е. Что бы Вы посоветовали? Заранее благодарен. Название: Re: Выбор сигнала QSpinBox Отправлено: kambala от Октябрь 05, 2013, 02:59 В книгах такого нету, там всё примитивно, подробного нигде не нашёл. в книгах Саммерфилд/Бланшетт и Шлее это есть. также документация Qt написана очень качественно и понятно, есть даже русская ее версия.Название: QSpinBox Отправлено: Wizard от Октябрь 05, 2013, 04:42 В книгах такого нету, там всё примитивно, подробного нигде не нашёл. в книгах Саммерфилд/Бланшетт и Шлее это есть. также документация Qt написана очень качественно и понятно, есть даже русская ее версия.Как выяснил {на Хабре!!!}, считывание значения представляет из себя нечто похожее на: a = ui -> spinBox -> value(); Ну так и где же хоть что-то, похожее на это в книгах Саммерфилда и Шлее? Нету нихрена!!! Я не знаю, как мне организовать структуру проекта: что должно содержаться в файле main.cpp, что в файле dialog.h, что в файле dialog.cpp, где мне реализовывать алгоритм (для дальнейших задач) - к примеру трассировки лучей: в main.cpp или в dialog.cpp? И прочие детали проекта. Спасибо за терпение (ведь я тупарь, ибо не задавал бы один и тот же вопрос на форуме 1000500 раз) и понимание!!! ??? Название: Re: QSpinBox Отправлено: Igors от Октябрь 05, 2013, 09:22 Как выяснил {на Хабре!!!}, считывание значения представляет из себя нечто похожее на: Представим себе что Вы пишете собственное UI. Тут обычно начинают фыркать, вспоминать про велосипеды и.т.п. Ну а все же - спиннер был бы класс. Конечно натыкали бы в него геттеров/сеттеров, как бы их назвали? Что-то типа GetValue/SetValue. Ну и в Qt почти так же. Но стопудово что эти методы должны быть, иначе нафиг нужен спиннер у которого нельзя ни установить ни прочитать значение? a = ui -> spinBox -> value(); Ну так и где же хоть что-то, похожее на это в книгах Саммерфилда и Шлее? Нету нихрена!!! Поэтому такие вещи очевидны для человека с опытом (пусть и небольшим) и упоминать о них в книгах излишне. А если опыта (пока) нет - надо набираться, а не изливать свое раздражение на форуме Название: Re: Выбор сигнала QSpinBox Отправлено: kambala от Октябрь 05, 2013, 11:31 У меня есть все эти книги. Я их перерыл, как сапёр в Stronghold Crusader. Передо мной стоит задача наращивать или понижать значение координат с помощью QSpinBox. про документацию я уже сказал. когда тебя интересует, на что способен класс, надо открывать именно ее.Как выяснил {на Хабре!!!}... а про саперов не надо тут. страницы во вложениях я нашел за считанные секунды. Название: Re: Выбор сигнала QSpinBox Отправлено: lit-uriy от Октябрь 05, 2013, 12:16 Есть документация по Qt частично переведённая на русский:
http://www.doc.crossplatform.ru/qt/ рекомендую там смотреть документацию по Qt 4.6 и Qt 4.5 (по тех. причинам более свежие версии отображаются кривовато и объём перевода в них меньше) В основном переведены обзорно-ознакомительные статьи, а также описания некоторых классов. Рекомендую изучить учебное пособие (http://www.doc.crossplatform.ru/qt/4.4.3/tutorials-tutorial.html) от старой версии, оно весьма поучителено для новичков П.С. Раздел "Подробное описание" документации по QSpinBox-у (http://www.doc.crossplatform.ru/qt/4.4.3/qspinbox.html#details) Название: Re: Выбор сигнала QSpinBox Отправлено: Wizard от Октябрь 05, 2013, 15:09 Есть документация по Qt частично переведённая на русский: Спасибо всем!http://www.doc.crossplatform.ru/qt/ рекомендую там смотреть документацию по Qt 4.6 и Qt 4.5 (по тех. причинам более свежие версии отображаются кривовато и объём перевода в них меньше) В основном переведены обзорно-ознакомительные статьи, а также описания некоторых классов. Рекомендую изучить учебное пособие (http://www.doc.crossplatform.ru/qt/4.4.3/tutorials-tutorial.html) от старой версии, оно весьма поучителено для новичков П.С. Раздел "Подробное описание" документации по QSpinBox-у (http://www.doc.crossplatform.ru/qt/4.4.3/qspinbox.html#details) |