一、把字符串转换成整形
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

 #ifndef MAINWINDOW_H
#define MAINWINDOW_H #include <QMainWindow> namespace Ui {
class MainWindow;
} class MainWindow : public QMainWindow
{
Q_OBJECT public:
explicit MainWindow(QWidget *parent = );
~MainWindow(); private slots:
void on_jieguo_clicked(); //槽函数,不懂的话可以看看我这篇的QT中槽的使用 private:
Ui::MainWindow *ui;
}; #endif // MAINWINDOW_H

源文件:mainwindow.cpp

 #include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>
#include <crtdefs.h>
#include <limits.h>
#include <stdlib.h>
#include <stdio.h> MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//建立槽连接
connect(ui->jieguo,SIGNAL(clicked(bool)),this,SLOT(MainWindow::on_jieguo_clicked()));
} MainWindow::~MainWindow()
{
delete ui;
} void MainWindow::on_jieguo_clicked()
{
QString line1 = ui->line1->text();//读出输入到line1中的字符串
QString line2 = ui->line2->text();
QString line3 = ui->line3->text();
QString line5; bool ok;
int line4_4 = ;
int line1_1;
int line3_3;
line1_1 = line1.toInt(&ok); //把字符转换成整形
line3_3 = line3.toInt(&ok);
if(!ok)
{
return;
}
else if(line2 == "+")
{
line4_4 = line1_1 + line3_3;
} else if(line2 == "-")
{
line4_4 = line1_1 - line3_3;
} else if(line2 == "*")
{
line4_4 = line1_1* line3_3;
} else if(line2 == "/")
{
if(line3_3 != )
{
line4_4 = line1_1 / line3_3;
}
else
{
line4_4 = ;
} }
ui->line4->setText(QString::number(line4_4));//QString::number把整形转化成字符
line5 = ui->line4->text();
qDebug()<<line5;
}

界面文件如下:

最新文章

  1. Linux与Windows 解压乱码 UTF8BOM读取问题
  2. cocos2dx jsoncpp
  3. HDU-2571命运
  4. 【转】 基于TFTP协议的远程升级设计
  5. DB 注意事项 优化数据库查询
  6. $_FILES数组为空的原因
  7. [bzoj4755][Jsoi2016]扭动的回文串
  8. 【webpack系列】从零搭建 webpack4+react 脚手架(四)
  9. 理解 Memory barrier(内存屏障)无锁环形队列
  10. MyBatis动态SQL(认真看看, 以后写SQL就爽多了)
  11. pycharm 中自动补全代码提示前符号 p,m ,c,v, f 是什么意思
  12. ORA-00257 archiver error. 错误的处理方法
  13. Chapter3_操作符_别名机制
  14. React Native 异步存储
  15. ubuntu下上传本地代码到github
  16. java 继承 初始化顺序
  17. poj_3662 最小化第k大的值
  18. 线程不安全的类不要轻易做为static变量使用,及如何使用ThreadLocal将共享变量变为独享变量
  19. BZOJ4888 Tjoi2017异或和(树状数组)
  20. 「Linux+Django」Django+CentOs7+uwsgi+nginx部署网站记录

热门文章

  1. warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
  2. Django框架中的model(操作数据库)
  3. 51Nod 1110 距离之和最小 V3 中位数 思维
  4. codeforces 883M. Quadcopter Competition 思路
  5. 玲珑学院-ACM比赛1014 - Absolute Defeat
  6. “玲珑杯”ACM比赛 Round #22 E 贪心,脑洞
  7. 转载 Mysql安装过程
  8. SSRS Fields cannot be used in page headers or footers
  9. webpack+babel项目在IE下报Promise未定义错误引出的思考
  10. nginx+redis缓存微信的token数据