QT中幾個函數的使用方法


一、把字符串轉換成整形
demo1:
QString str = "FF";
bool ok;
int hex = str.toInt(&ok, 16); // hex == 255, ok == true
int dec = str.toInt(&ok, 10); // dec == 0, ok == false

demo2:
bool ok;
QString line = "123";
int line1 = line.toInt(&ok); //把字符串“123”轉換成整形的123

二、把整形轉換成字符串
demo1:
long a = 63;
QString s = QString::number(a, 16); // s == "3f"
QString t = QString::number(a, 16).toUpper(); // t == "3F"

demo2:
int line4 = 123;
QString line4_4;
line4_4 = QString::number(line4);  //把整形的123轉換成字符串的"123"

三、獲取輸入對象中的字符串
QString line2 = ui->line1->text();
//line1為輸入對象,把line1中的字符串保存在line2中

四、設置輸入對象中的字符串
ui->line4->setText("hello");
//輸入框中顯示"hello"

 

使用例子:根據輸入的運算符號進行兩個數的加減乘除運算,讓后點擊一下按鈕自動進行運算。

頭文件:mainwindow.h

 

 1 #ifndef MAINWINDOW_H
 2 #define MAINWINDOW_H
 3 
 4 #include <QMainWindow>
 5 
 6 namespace Ui {
 7 class MainWindow;
 8 }
 9 
10 class MainWindow : public QMainWindow
11 {
12     Q_OBJECT
13 
14 public:
15     explicit MainWindow(QWidget *parent = 0);
16     ~MainWindow();
17 
18 private slots:
19     void on_jieguo_clicked(); //槽函數,不懂的話可以看看我這篇的QT中槽的使用
20 
21 private:
22     Ui::MainWindow *ui;
23 };
24 
25 #endif // MAINWINDOW_H

 

源文件:mainwindow.cpp

 1 #include "mainwindow.h"
 2 #include "ui_mainwindow.h"
 3 #include <QDebug>
 4 #include <crtdefs.h>
 5 #include <limits.h>
 6 #include <stdlib.h>
 7 #include <stdio.h>
 8 
 9 MainWindow::MainWindow(QWidget *parent) :
10     QMainWindow(parent),
11     ui(new Ui::MainWindow)
12 {
13     ui->setupUi(this);
14     //建立槽連接
15     connect(ui->jieguo,SIGNAL(clicked(bool)),this,SLOT(MainWindow::on_jieguo_clicked()));
16 }
17 
18 MainWindow::~MainWindow()
19 {
20     delete ui;
21 }
22 
23 void MainWindow::on_jieguo_clicked()
24 {
25        QString line1 = ui->line1->text();//讀出輸入到line1中的字符串
26        QString line2 = ui->line2->text();
27        QString line3 = ui->line3->text();
28        QString line5;
29 
30        bool ok;
31        int line4_4 = 0;
32        int line1_1;
33        int line3_3;
34        line1_1 = line1.toInt(&ok); //把字符轉換成整形
35        line3_3 = line3.toInt(&ok);
36        if(!ok)
37        {
38           return;
39        }
40        else if(line2 == "+")
41         {
42             line4_4 = line1_1 + line3_3;
43         }
44 
45        else if(line2 == "-")
46         {
47             line4_4 = line1_1 - line3_3;
48         }
49 
50        else if(line2 == "*")
51         {
52             line4_4 = line1_1* line3_3;
53         }
54 
55         else if(line2 == "/")
56         {
57             if(line3_3 != 0)
58             {
59                 line4_4 = line1_1 / line3_3;
60             }
61             else
62             {
63                 line4_4 = 0;
64             }
65 
66         }
67         ui->line4->setText(QString::number(line4_4));//QString::number把整形轉化成字符
68         line5 = ui->line4->text();
69         qDebug()<<line5;
70 }

 

界面文件如下:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM