qt 最初

2016-12-19  本文已影响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
上一篇下一篇

猜你喜欢

热点阅读