Здравствуйте, гость ( Вход | Регистрация )
ArhiZhek | Дата 28.10.2011, 19:21 |
ого сколько у меня косяков сейчас буду исправляться, благодарю за помощь! silver47, Sokoloff, wiz29, разобрался с Вашей помощью, теперь попытаюсь добавить несколько переменных... |
|
wiz29 | Дата 28.10.2011, 10:13 |
только я не знаю из какого файла... выложу все... исходники: main.cpp
все ваши проблемы описаны в комментах с вопросами, надеюсь понятно где ошибки. |
|
Sokoloff | Дата 28.10.2011, 10:04 |
Вы запутались с созданием widget-ов. Есть 2 подхода:
Предлагаю начать с нуля. Создайте в креаторе новый проект "GUI приложение", форму наследуйте от MainWindow (хотя здесь это не принципиально). Откроется редактор формы, накидайте на него 3 line edit-а и кнопку. По умолчанию эдиты имеют имена lineEdit, lineEdit_2 и lineEdit_3, кнопка - pushButton. Пусть так и называются. Посмотрите на код: В большинстве программ в эту функция Вам ничего дописывать не придется. Может только перевод подключать.
Это минимальный код для формы. Можете запустить проект (Ctrl+R), покажется форма.Теперь по клику на кнопке скопируем содержимое lineEdit в lineEdit_2. Добавляем слот copyText и привязываем его к сигналу кнопки
Надеюсь стало понятнее, как обратиться к виджетам на форме. |
|
silver47 | Дата 28.10.2011, 9:11 |
А чего это у Вас, батенька, в деструкторе? В приложении исходники проекта. Комменты ниже:
|
|
ArhiZhek | Дата 28.10.2011, 8:07 |
только я не знаю из какого файла... выложу все... заголовочный: #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QtGui> namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); QLineEdit *lea; QLineEdit *leb; QLineEdit *ler; private: Ui::MainWindow *ui; QPushButton *btn; }; #endif // MAINWINDOW_H исходники: main.cpp #include <QtGui/QApplication> #include "mainwindow.h" #include "math.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); QTextEdit textEdit; QPushButton quitButton("rez"); QObject::connect(&quitButton, SIGNAL(clicked()), qApp, SLOT(quit())); QWidget window; window.show(); return a.exec(); } mainwindow.cpp: #include <QtGui> #include "mainwindow.h" #include "ui_mainwindow.h" #include "math.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow(){ lea=new QLineEdit(this); leb=new QLineEdit(this); ler=new QLineEdit(this); lea->show(); leb->show(); ler->show(); QPushButton *btn1=new QPushButton(tr("Schitaty"),this); btn1->show(); QObject::connect(btn1,SIGNAL(clicked()), this, SLOT(main())); double a,b,r; a=lea->text().toDouble(0); b=leb->text().toDouble(0); r=ler->text().toDouble(0); r=a+b; ler->setText(QString::number®); } |
|
ilyabvt | Дата 27.10.2011, 22:47 |
ArhiZhek Будет гораздо проще, если вы покажете код. | |
BRE | Дата 27.10.2011, 21:46 |
Забыл в конструкторе виджета вызвать setupUi? | |
ArhiZhek | Дата 27.10.2011, 21:13 |
хочу попробовать создать простейший калькулятор (только сумма), в один LineEdit вводим a, в другой LineEdit вводим b, щелкаем pushbutton - выводит результат в третьем LineEdit, и никак у меня не получается его реализовать - выводит пустое окошко, помогите найти проблему... P.S. я только учусь прог-ть в Qt |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 19.4.2024, 10:20 |