.h
#pragma once
#include <QtWidgets/QDialog>
#include "ui_QtWidgetsApp.h"
#include <QString>
class QtWidgetsApp_1 : public QDialog
{
Q_OBJECT
public:
QtWidgetsApp_1(QWidget *parent = Q_NULLPTR);
private:
Ui::QtWidgetsApp_1Class ui;
public slots:
void on_btn_run(); // 버튼을 눌렀을 때 연결하는 함수
void on_radio_run();
void on_checkbox_run();
};
.cpp
#include "QtWidgetsApp.h"
#include <QFileDialog>
static int cnt = 0;
QtWidgetsApp_1::QtWidgetsApp_1(QWidget *parent) : QDialog(parent)
{
ui.setupUi(this);
//디자인 파일의 객체(동작)와 C++ 함수(SLOT)를 연결
connect(ui.btn_run, SIGNAL(clicked()), this, SLOT(on_btn_run()));
connect(ui.radio_1, SIGNAL(clicked()), this, SLOT(on_radio_run()));
connect(ui.radio_2, SIGNAL(clicked()), this, SLOT(on_radio_run()));
connect(ui.radio_3, SIGNAL(clicked()), this, SLOT(on_radio_run()));
connect(ui.chk_ski, SIGNAL(clicked()), this, SLOT(on_checkbox_run()));
connect(ui.chk_climb, SIGNAL(clicked()), this, SLOT(on_checkbox_run()));
connect(ui.chk_yacht, SIGNAL(clicked()), this, SLOT(on_checkbox_run()));
}
void QtWidgetsApp_1::on_radio_run()
{
QString str;
if (ui.radio_1->isChecked()) {
str.append(QString::fromLocal8Bit("당신은 대구 출생입니다."));
}
if (ui.radio_2->isChecked()) {
str.append(QString::fromLocal8Bit("당신은 경북 출생입니다."));
}
if (ui.radio_3->isChecked()) {
str.append(QString::fromLocal8Bit("당신은 기타지역 출생입니다."));
}
ui.label->setText(str);
}
void QtWidgetsApp_1::on_checkbox_run()
{
QString str;
str.append(QString::fromLocal8Bit("취미는 "));
if (ui.chk_ski->isChecked()) {
str.append(QString::fromLocal8Bit("스키, "));
}
if (ui.chk_climb->isChecked()) {
str.append(QString::fromLocal8Bit("등산, "));
}
if (ui.chk_yacht->isChecked()) {
str.append(QString::fromLocal8Bit("요트 "));
}
str.append(QString::fromLocal8Bit("입니다."));
ui.label->setText(str);
}
//헤더파일에서 선언한 함수를 정의
void QtWidgetsApp_1::on_btn_run()
{
QString str;
if (ui.radio_1->isChecked()) {
str.append(QString::fromLocal8Bit("당신은 대구 출생, "));
}
else if (ui.radio_2->isChecked()) {
str.append(QString::fromLocal8Bit("당신은 경북 출생, "));
}
else if(ui.radio_3->isChecked()) {
str.append(QString::fromLocal8Bit("당신은 기타지역 출생, "));
}
str.append(" \n");
str.append(QString::fromLocal8Bit("나이는 "));
str.append(QString("%1").arg(ui.spinBox->cleanText()));
str.append(QString::fromLocal8Bit("살 입니다."));
ui.label->setText(str);
}
'PROGRAM > Qt with C++' 카테고리의 다른 글
Qt - RadioButton (0) | 2021.06.21 |
---|---|
Qt - VisualStudio 2019 한글깨짐 (0) | 2021.06.21 |
Qt - SpinBox (0) | 2021.06.18 |
Qt - Combobox (0) | 2021.06.18 |
Qt - PushButton (0) | 2021.06.18 |