대왕 버튼과 큰 글자까지 만들어보았다. 누르고 싶은 버튼을 만들었으니까 버튼 이벤트를 만들어보자.
버튼 이벤트를 만들기 위해서 QObject라는 헤더 파일이 필요하다.
#include <QApplication>
#include <QWidget>
#include <QLabel>
#include <QPushButton>
#include <QFont>
#include <QObject>
void onButtonClicked(){
qInfo("button clicked!");
}
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget window;
window.resize(1920, 1080); // window size
window.setWindowTitle("Empty window"); // widow name
QLabel label("Minit blog!", &window); // text
label.move(300, 300); // text position
QPushButton button("클릭하세요", &window); // button
QFont buttonFont = button.font();
buttonFont.setPointSize(16); // button text size
button.setFont(buttonFont);
button.move(500, 500); // button position
button.resize(500, 500); // Set button size
QObject::connect(&button, &QPushButton::clicked, &onButtonClicked); // button click event
window.show();
return app.exec();
}
버튼을 누르면 Application Output에 설정한 메시지 Button clicked! 가 나오는 것을 볼 수 있다.
QObject::connect() 함수를 부르며 신호(Singal)와 슬롯(Slot)이라는 개념이 나온다.
정말 간단하게 설명하자면 Qt는 모든 이벤트 처리를 시그널과 슬롯을 사용하고 이벤트는 시그널, 시그널에 반응하는 함수나 메서드가 슬롯이다.
728x90
'Qt' 카테고리의 다른 글
[Qt] 배경색 변경 (0) | 2024.10.16 |
---|---|
[Qt] 텍스트 입력란 (0) | 2024.10.16 |
[Qt] 버튼 만들기 (0) | 2024.10.16 |
[Qt] 텍스트 출력 (0) | 2024.10.16 |
[Qt] 빈 창 만들기 (0) | 2024.10.16 |