Russian Qt Forum
Ноябрь 23, 2024, 10:37
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
передать форме данные при создании
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: передать форме данные при создании (Прочитано 10701 раз)
stanukih
Гость
передать форме данные при создании
«
:
Апрель 19, 2016, 11:43 »
Разрабатываю приложение для работы с бд (MySQL). Данные должны быть представлены в разном виде в зависимости от значений одного поля. Главная форма mainwindows.cpp используется для соединения с базой (авторизация). Планировал сделать следующее - после успешной авторизации считываются все данные. При проходе по ним открывается соответствующая форма. Требуется ей передать данные ключ к запись бд которую нужно показать. Как передать этот параметр при открытии формы?
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: передать форме данные при создании
«
Ответ #1 :
Апрель 19, 2016, 12:10 »
в конструкторе передавать например
Записан
Изучением 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
stanukih
Гость
Re: передать форме данные при создании
«
Ответ #2 :
Апрель 19, 2016, 17:57 »
Не получается, ошибка ошибка: default argument missing for parameter 2 of 'standart::standart(QWidget*, int)' explicit standart(QWidget *parent = 0, int ok);
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: передать форме данные при создании
«
Ответ #3 :
Апрель 19, 2016, 17:59 »
Цитата: stanukih от Апрель 19, 2016, 17:57
Не получается, ошибка ошибка: default argument missing for parameter 2 of 'standart::standart(QWidget*, int)' explicit standart(QWidget *parent = 0, int ok);
Вам нужно подучить C++.
Параметры с значениями по умолчанию должны всегда идти после обязательных параметров. Поменяйте местами QWidget* и int.
Записан
stanukih
Гость
Re: передать форме данные при создании
«
Ответ #4 :
Апрель 19, 2016, 18:10 »
Цитировать
Параметры с значениями по умолчанию должны всегда идти после обязательных параметров. Поменяйте местами QWidget* и int.
Спасибо теперь то что я и хотел.
Цитировать
Вам нужно подучить C++
Полностью согласен - стараюсь учить во время написания, на простое чтение книг нет ни времени, ни желания.
Записан
Alex Custov
Джедай : наставник для всех
Offline
Сообщений: 2063
Re: передать форме данные при создании
«
Ответ #5 :
Апрель 19, 2016, 18:45 »
Цитата: stanukih от Апрель 19, 2016, 18:10
Полностью согласен - стараюсь учить во время написания
Самый непродуктивный способ изучения языка, которым и пользуются все новички.
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: передать форме данные при создании
«
Ответ #6 :
Апрель 19, 2016, 18:50 »
Цитата: Alex Custov от Апрель 19, 2016, 18:45
Самый непродуктивный способ изучения языка, которым и пользуются все новички.
Да еще и с Qt его учить совсем плохо. Qt навязывает определенные подходы, рамки.
Записан
Bepec
Гость
Re: передать форме данные при создании
«
Ответ #7 :
Апрель 19, 2016, 19:04 »
А можно примеры подходов и рамок?
PS вдруг у меня они таки висят.
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: передать форме данные при создании
«
Ответ #8 :
Апрель 19, 2016, 19:17 »
Цитата: Bepec от Апрель 19, 2016, 19:04
А можно примеры подходов и рамок?
PS вдруг у меня они таки висят.
Неумение правильно управлять памятью (надежда на удаление объектов parentом);
Неумение использовать множественное наследование;
Примеры Qt часто смешивают GUI и функционал (для примеров это нормально, но обучаемый начинает использовать такой же подход и в нормальных проектах).
Навязывается готовое дерево классов, а для обсучения полезней прорабатывать свои деревья.
При изучении ООП нужно учиться выделять сущности, их анализировать, описывать взаимодействия между объектами, а Qt дает все готовое.
По хорошему, при изучении ООП, хорошо писать какие нибудь симуляторы, где множество разных объектов взаимодействуют друг с другом. Тогда и C++ получится использовать полноценно, а не как C с вектором.
Записан
Bepec
Гость
Re: передать форме данные при создании
«
Ответ #9 :
Апрель 19, 2016, 19:51 »
Кхм. Разве что множественное наследование пойдёт в копилку. Всё остальное не катит
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: передать форме данные при создании
«
Ответ #10 :
Апрель 20, 2016, 11:39 »
Действительно, как должно выглядеть "изучение языка"? Чтение книг? Ну это вряд ли - лично у меня половина энтузиазма испаряется уже после перелистывания обильного предисловия (благодарностей и.т.п.). Дальше идут довольно прописные истины, в лучшем случае пример на гнусной жабе, в который мне мучительно трудно вникнуть. И дело кончается типа "эхх.. да ладно..."
Другие упорно поглощают весь "синтаксический сахар", обычно злоупотребляя std. Лямбды, const_expr, сомнительная любовь к итераторам и.т.п. - все это немедленно добавляется в арсенал. Воспользоваться какой-то замшелой ф-цией std - дело чести. В рез-те код настолько "заджазован" что понять его мудрено.
И все-таки "учить язык по ходу дела, осваивая Qt" - несомненно худший вариант. Конечно читать доку (букварь) программист обязан, без этого не обойтись, но это очень слабо связано со знанием языка, здесь упор на "полезные вещи" быстро приносящие практический рез-т (вызов готового класса). Плохо то что очень быстро у человека формируется стойкое убеждение: всегда и везде "надо пользоваться готовым", на свои решения он не способен. Ведь он никогда ничего и не проектировал, никаких классов не сочинял (только "формы"), переписывал примеры - и все. Впрочем "а был ли мальчик" - ведь сейчас программирование модно, и многие идут в него совсем не по призванию.
Конечно легко советовать, мол, "ты сначала плюсы подучи, а потом с Qt благодать" - считаю это совершенно верно. Но неясно что человеку делать, ведь он не может оказаться в моем времени когда ничего не было и приходилось копошиться самому. "Поработай сначала c char *, а потом уж говнокодь с QString" - мудрый совет, но вряд ли многие будут ему следовать.
Записан
Smogg
Гость
Re: передать форме данные при создании
«
Ответ #11 :
Май 05, 2016, 23:32 »
Цитата: Old от Апрель 19, 2016, 18:50
Цитата: Alex Custov от Апрель 19, 2016, 18:45
Самый непродуктивный способ изучения языка, которым и пользуются все новички.
Да еще и с Qt его учить совсем плохо. Qt навязывает определенные подходы, рамки.
Этточно. После Кьюта чистый цпп - сплошное самоиздевательство) Но кьютовый цпп вне Кьюта и не существует) Такая вот дилемма
Записан
Racheengel
Джедай : наставник для всех
Offline
Сообщений: 2679
Я работал с дискетам 5.25 :(
Re: передать форме данные при создании
«
Ответ #12 :
Май 06, 2016, 00:00 »
Цитата: Alex Custov от Апрель 19, 2016, 18:45
Цитата: stanukih от Апрель 19, 2016, 18:10
Полностью согласен - стараюсь учить во время написания
Самый непродуктивный способ изучения языка, которым и пользуются все новички.
А есть другие варианты кроме learning by doing?
Писать продакшен код всяко лучше вместо того, чтобы говнокодить абстрактную муйню по примерам из книжек.
Записан
What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.
COVID не волк, в лес не уйдёт
Smogg
Гость
Re: передать форме данные при создании
«
Ответ #13 :
Май 06, 2016, 01:07 »
Цитата: Racheengel от Май 06, 2016, 00:00
А есть другие варианты кроме learning by doing?
Писать продакшен код всяко лучше вместо того, чтобы говнокодить абстрактную муйню по примерам из книжек.
Глупость брякнули, право) Сначала learning, а уж потом doing. Как говаривал Ницше: "Лишь построив дом научаешься тому, что должен был знать с самого начала". Научится-то научился, но дом-то уже построен!
Записан
Bepec
Гость
Re: передать форме данные при создании
«
Ответ #14 :
Май 06, 2016, 03:19 »
Попробуйте современные учебники с примерами по C++. Такой мути я не видел со школьной скамьи. Мало того, 60% материала откровенно не нужного. Из целых разделов можно убрать всё кроме пары глав - и вообще ничего не изменится
PS если уж и учить, то по страуструпу
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...