![]() |
|
![]() ![]() ![]() |
|
Nikys |
|
||||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 9.5.2013 Репутация: нет Всего: нет |
Доброго всем вечера или ночи.
Пишу Qt4 проект на C++. Суть в том, что есть главное окно, которое по нажатию кнопки открывает диалоговое окно. Есть Line Edit, кнопка ОК (самописная, не из QDialogButtonBox, по которой должна вызываться процедура для добавления этой строки в QList, но это другая история) и кнопка Отмена (просто закрывает форму). Описал для обеих форм классы, описал методы и конструктор с коннектом. Формы нарисовал в QtDesigner. Суть в том, что вторая форма открывается, но никак не реагирует на нажатия кнопок и не выполняет нужную процедуру по нажатию Enter в Line Edit (лишь закрывая при этом форму, т.е., по нажатию Enter в Line Edit). Я так понял, что либо не отсылается сигнал на слот, либо не слот не принимает сигнал. Либо я по другой статье залетел. Все размещено в трех файлах (mainwindow.h, main.cpp, mainwindow.cpp) и юзаются формы (mainwindow.ui, newteam.ui). В файле mainwindow.h:
В mainwindow.cpp
В main.cpp, вроде бы, нет ничего, что могло бы повлиять на проблему. Все, что связывает его с формами - объявление и показ формы из MainWindow. Всем заранее спасибо за ответы. Прошу прощения за глупые вопросы. Конструктивная критика по поводу кривости реализации приветствуется. Это сообщение отредактировал(а) Nikys - 9.5.2013, 22:15 |
||||
|
|||||
borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 48 Всего: 135 |
1. Если мне не изменяет память, то moc-компилятор требует, чтобы один класс был описан в одном файле
2. Что пишется в окне вывода ? 3. Чем тебе QInputDialog::getItem() не устраивает ? -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
Nikys |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 9.5.2013 Репутация: нет Всего: нет |
Я просто не знаю, как тогда можно связать между собой, чтобы новое открытое окно открывалось из другого окна. Чтобы не было множественного включения библиотек. Окно вывода считает, что программа работает целиком правильно. Честно, не знал. Спасибо, пригодится. Но вопрос остается в силе, так как у меня будут и другие окна, уже не диалоговые. |
|||
|
||||
Nikys |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 9.5.2013 Репутация: нет Всего: нет |
borisbn, и ещё тогда можно задать к вам вопрос? Если у меня присутствует БД в программе, то желательно также описать класс (с методами по добавлению информации и считыванию), который будет работать с ней?
|
|||
|
||||
math64 |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 23 Всего: 72 |
Чтобы избежать лишних включений заголовков, обычно используют не множественноенаследование, а включают Ui::Dialog* ui в качестве поля класса.
#include "ui_newteam.h" тогда включается в cpp файле. |
|||
|
||||
Nikys |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 9.5.2013 Репутация: нет Всего: нет |
Спасибо всем за советы! После реорганизации программы должным образом (класс в отдельный хедер, отдельный cpp для него) и использование в поле класса Ui::className *ui вроде как начало работать
![]() Теперь буду твердо знать, что игнорировать советы умных людей, которые документацию составляют, нехорошо. Вроде как проблема решена ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |