QT学习日记1
2024.3.29
Qt下载及安装:略
Qt资料:Qt 编程指南
新建一个Qt桌面应用,可以看到主要的一些文件:mainwindow.h,main.cpp,mainwindow.cpp
mainwindow.h定义了一个类,而该类的函数都被写在mainwindow.cpp中。
给空白的window添加了一个设置标题的函数,一个按钮和一个单行文本输入框。
代码如下:
mainwindow.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| #ifndef MAINWINDOW_H #define MAINWINDOW_H
#include <QMainWindow>
class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); void setWindowTitle(const QString &title); void handleButtonClick(); }; #endif
|
mainwindow.cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| #include "mainwindow.h" #include <QPushButton> #include <QLineEdit>
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { QPushButton *button1=new QPushButton("button1",this); button1->setGeometry(10,10,100,30); connect(button1,&QPushButton::clicked,this,&MainWindow::handleButtonClick);
QLineEdit *lineedit=new QLineEdit("",this); lineedit->setGeometry(10,50,100,30); connect(lineedit,&QLineEdit::textChanged,[=](const QString &text){ qDebug()<<"text="<<text; }); }
MainWindow::~MainWindow() { qDebug() << "关闭"; }
void MainWindow::setWindowTitle(const QString &title) { QMainWindow::setWindowTitle(title); }
void MainWindow::handleButtonClick() { qDebug() << "按钮被点击了!"; }
|
main.cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| #include "mainwindow.h"
#include <QApplication> #include <QLocale> #include <QTranslator>
int main(int argc, char *argv[]) { QApplication a(argc, argv); QTranslator translator; const QStringList uiLanguages = QLocale::system().uiLanguages(); for (const QString &locale : uiLanguages) { const QString baseName = "ff2_" + QLocale(locale).name(); if (translator.load(":/i18n/" + baseName)) { a.installTranslator(&translator); break; } } MainWindow w; w.setWindowTitle("rain4ky的文件列表"); w.show(); return a.exec(); }
|