qt2

作者: 萌面大叔2 | 来源:发表于2017-02-15 13:05 被阅读0次

    控件的运用

    (1)新建项目dialog
    dialog.PNG
    (2)在界面上添加控件
    界面.PNG ObjectName.PNG
    (3)在.cpp中添加代码
    #include "firstui.h"
    #include "ui_firstui.h"
    #include <QDebug>
    #include <QFile>
    #include <QTextStream>
    #include <QList>
    #include <QAbstractButton>
    
    firstui::firstui(QWidget *parent) :
        QDialog(parent),
        ui(new Ui::firstui)
    {
        ui->setupUi(this);
    }
    
    firstui::~firstui()
    {
        delete ui;
    }
    
    void firstui::on_ok_clicked()
    {
        QString name = ui->lineEdit_name->text();
        QString id = ui->lineEdit_id->text();
        QString sex = ui->sex->checkedButton()->text();
        QString age = ui->comboBox->currentText();
        QString college = ui->comboBox_college->currentText();
    
        QList<QAbstractButton*> ins = ui->interest->buttons();
    
        //保存文件
        QFile file("student.txt");
        if(!file.open(QIODevice::WriteOnly\
                      |QIODevice::Text|QIODevice::Append))return;
        QTextStream out(&file);
        out<<name<<" "<<id<<" "<<sex<<" "<<age<<" "<<college;
        //遍历interest,把选中的接到后面,保存在文件中
        for(int i=0;i<ins.size();i++)
        {
            if(ins[i]->isChecked())
            {
                out<<" "<<ins[i]->text();
                ins[i]->setChecked(false);//清空界面
            }
        }
        out<<endl;
        file.close();//关闭文件
        //清空界面
        ui->lineEdit_name->clear();
        ui->lineEdit_id->clear();
        ui->comboBox->setCurrentIndex(0);
        ui->comboBox_college->setCurrentIndex(0);
        ui->sex->setExclusive(false);
        ui->sex->checkedButton()->setChecked(false);
        ui->sex->setExclusive(true);
    }
    
    void firstui::on_close_clicked()
    {
        close();
    }
    
    

    运行结果:

    在运行界面上输入如下
    输入.PNG
    点击ok,会清空界面
    清空.PNG
    并写入文件
    写入文件.PNG

    计算器

    (1)界面如图:
    计算机.PNG
    (2)mainwindows.cpp里的代码
    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include <QDebug>
    
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
        //初始化
        m_num1=0;
        m_num2=0;
        m_result=0;
        m_op='+';
        m_make=0;
        t='\0';
    }
    //析构函数
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    //数字1按钮的函数
    void MainWindow::on_pushButton_clicked()
    {
        t+="1";
        if(!m_make)
        {
            m_num1=1;
        }
        else
        {
            m_num2=1;
        }
        ui->lineEdit->setText(t);
    }
    
    //数字2按钮的函数
    void MainWindow::on_pushButton_2_clicked()
    {
        t+="2";
        if(!m_make)
        {
            m_num1=2;
        }
        else
        {
            m_num2=2;
        }
        ui->lineEdit->setText(t);
    }
    
    //数字3按钮的函数
    void MainWindow::on_pushButton_3_clicked()
    {
        t+="3";
        if(!m_make)
        {
            m_num1=3;
        }
        else
        {
            m_num2=3;
        }
        ui->lineEdit->setText(t);
    }
    
    //数字4按钮的函数
    void MainWindow::on_pushButton_4_clicked()
    {
        t+="4";
        if(!m_make)
        {
            m_num1=4;
        }
        else
        {
            m_num2=4;
        }
        ui->lineEdit->setText(t);
    }
    
    //数字5按钮的函数
    void MainWindow::on_pushButton_5_clicked()
    {
        t+="5";
        if(!m_make)
        {
            m_num1=5;
        }
        else
        {
            m_num2=5;
        }
        ui->lineEdit->setText(t);
    }
    
    //数字6按钮的函数
    void MainWindow::on_pushButton_6_clicked()
    {
        t+="6";
        if(!m_make)
        {
            m_num1=6;
        }
        else
        {
            m_num2=6;
        }
        ui->lineEdit->setText(t);
    }
    
    //数字7按钮的函数
    void MainWindow::on_pushButton_7_clicked()
    {
        t+="7";
        if(!m_make)
        {
            m_num1=7;
        }
        else
        {
            m_num2=7;
        }
        ui->lineEdit->setText(t);
    }
    
    //数字8按钮的函数
    void MainWindow::on_pushButton_8_clicked()
    {
        t+="8";
        if(!m_make)
        {
            m_num1=8;
        }
        else
        {
            m_num2=8;
        }
        ui->lineEdit->setText(t);
    }
    
    //数字9按钮的函数
    void MainWindow::on_pushButton_9_clicked()
    {
        t+="9";
        if(!m_make)
        {
            m_num1=9;
        }
        else
        {
            m_num2=9;
        }
        ui->lineEdit->setText(t);
    }
    
    //按钮'+'号的函数
    void MainWindow::on_add_clicked()
    {
        t+="+";
        m_op='+';
        m_make=1;
        ui->lineEdit->setText(t);
    }
    
    //按钮'-'号的函数
    void MainWindow::on_Reduction_clicked()
    {
        t+="-";
        m_op='-';
        m_make=1;
        ui->lineEdit->setText(t);
    }
    
    //按钮'*'号的函数
    void MainWindow::on_multiply_clicked()
    {
        t+="*";
        m_op='*';
        m_make=1;
        ui->lineEdit->setText(t);
    }
    
    //按钮'/'号的函数
    void MainWindow::on_divide_clicked()
    {
        t+="/";
        m_op='/';
        m_make=1;
        ui->lineEdit->setText(t);
    }
    
    //按钮'='号的函数
    void MainWindow::on_equal_clicked()
    {
        switch(m_op)
        {
            case '+':
                m_result=m_num1+m_num2;
                break;
            case '-':
                m_result=m_num1-m_num2;
                break;
            case '*':
                m_result=m_num1*m_num2;
                break;
            case '/':
                m_result=m_num1/m_num2;
                break;
            default:
                break;
        }
        t+="=";
        QString s=QString::number(m_result,10);
        t+=s;
        ui->lineEdit->setText(t);
        //清空界面
        m_num1=0;
        m_num2=0;
        m_result=0;
        m_op='+';
        m_make=0;
        t='\0';
    }
    
    //清空按钮C
    void MainWindow::on_empty_clicked()
    {
        m_num1=0;
        m_num2=0;
        m_result=0;
        m_op='+';
        m_make=0;
        t='\0';
        ui->lineEdit->clear();
    }
    
    
    

    相关文章

      网友评论

          本文标题:qt2

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