qt 最初

作者: 唐宇威威 | 来源:发表于2016-12-19 17:48 被阅读0次

    qt是一个图形用户编辑的库,虽然有些跟不上时代。但是终于可以做到图形界面我很快就想到了不少游戏,先把第一天这个大杂烩整理一番

    这是头文件

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    #include <QMainWindow>
    
    namespace Ui {
    class MainWindow;
    }
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        explicit MainWindow(QWidget *parent = 0);
        ~MainWindow();
    
    private slots:
        void on_pushButton_clicked();
    
        void on_pushButton_2_clicked();
    
        void on_pushButton_2_pressed();
        void hello();//自己写的槽函数需要在这里声明一下。
    
        void on_radioButton_clicked();
    
        void on_tijiao_clicked();
    
    private:
        Ui::MainWindow *ui;
    };
    
    #endif // MAINWINDOW_H
    

    接下来是主函数

    #include "mainwindow.h"
    #include <QApplication>
    #include<QLabel>//使用标签时用的
    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
        MainWindow wc;
        QLabel w("hello world");//一个标签显示helloworld
    
       // w.show();
        //throw 9;//这是故意放一个段错误,然后用gdb编译查找。
        wc.show();//创建的东西需要展示出来才能被看到
        return a.exec();//退出
    }
    

    最后是主要的文件

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include<iostream>
    #include<QDebug>
    using namespace std;
    int a;
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
        connect(ui->yyy,SIGNAL(clicked()),this,SLOT(hello()));
        //连接yyy点击和hello函数
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    void MainWindow::on_pushButton_clicked()
    {
        cout<<"xxx is clicked "<<a<<endl;
        a++;
        QString temp =QString::number(a,10);//打印a需要这么做
        ui->xxx->setText(temp);
    }
    
    void MainWindow::on_pushButton_2_clicked()
    {
        close();//关闭窗口
    }
    void MainWindow::hello()
    {
        cout<<"hello fuck"<<endl;
        ui->xxx->setText("fuck");//把xxx按钮上的文本改为fuck
    }
    void MainWindow::on_pushButton_2_pressed()
    {
        cout<<"will close"<<endl;//点击还没松开时的信号
    }
    
    void MainWindow::on_radioButton_clicked()
    {
         cout<<"love live"<<endl;
    }
    
    void MainWindow::on_tijiao_clicked()
    {
        qDebug()<<ui->lineEdit->text()<<endl;//打印文本框里的内容。
    }
    
    

    下面是今晚的作业,一个简单的账号密码输入框

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include<iostream>
    #include<QDebug>
    using namespace std;
    int flag=1;
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    void MainWindow::on_pushButton_3_clicked()
    {
         close();
    }
    
    void MainWindow::on_pushButton_clicked()
    {
         qDebug()<<ui->lineEdit->text()<<endl<<ui->lineEdit_2->text()<<endl;
         if((ui->lineEdit->text())!="tyw")//可以用==直接判断字符串
             flag=0;
         if(ui->lineEdit_2->text()!="ppb")
             flag=0;
         if(flag==0)
         {
             cout<<"fail"<<endl;
             ui->xxx->setText("fail");
             flag=1;
         }
         else
         {
             cout<<"success"<<endl;
             ui->xxx->setText("success");
         }
    
    }
    
    

    效果图


    wq.png 233

    相关文章

      网友评论

          本文标题:qt 最初

          本文链接:https://www.haomeiwen.com/subject/vhvtvttx.html