我是靠谱客的博主 成就百褶裙,这篇文章主要介绍使用QT界面进行onetnet数据上传与下载,现在分享给大家,希望可以做个参考。

上篇已经讲述了onenet基于TCP通信协议的socket编程,接下来将会向大家介绍如何编辑一个QT界面
实现数据的上传和下载,顺带介绍一个登陆界面的的制作过程。
过程分析:上篇我们使用的是c语言编写的客户端程序,有人会说,QT是一个基于c++语言的开发工具
如何实现在QT中引用已经实现的客户端程序呢?难道是将程序全部加载到指定的QT项目中?
分析如下:
首先我们都知道QT是基于c++的一门开发工具,c++呢本质又是和c一脉相承。所以在c++中 使用c原理上是可以实现的,其实很多很开始有误区,将c程序全部加载到指定的QT项目中。大家可以试想一下,大规模的函数如何加载,这会极大的增加函数的风险,减少函数的容错性。所以c++(QT) 中特意使用了一个进程创建用于调用已经完成的c函数的可执行程序。通过操作c可执行程序完成c与c++ 的完美结合,从而增加函数的封装性,提高函数的容错性。具体执行如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
QProcess *process=new QProcess(); if(i==false){ ui->pushButton->setText("链接"); i=true; qDebug()<<"开始链接"; process->start("./post",str); /*post就是用c编写的socket程序,str指的是将QT界面输入 的数据加载到可执行程序后面*/ process->waitForStarted(); process->waitForFinished(); QByteArray qb=process->readAll(); QString str22(qb); ui->listWidget->addItem(str22);

接下来向大家介绍一下常用QT界面的背景添加以及美化:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void surfDialog::paintEvent(QPaintEvent *){ //加载图片 QPixmap pixmap = QPixmap(":/tutu/mm.jpg").scaled(this->size()); QPainter painter(this); painter.drawPixmap(this->rect(), pixmap); //字体颜色设置 QPalette pa; pa.setColor(QPalette::WindowText,Qt::white); ui->label->setPalette(pa); ui->label_2->setPalette(pa); //字体大小设置 QFont ft; ft.setPointSize(12); ui->label->setFont(ft); ui->label_2->setFont(ft); }

最后

以上就是成就百褶裙最近收集整理的关于使用QT界面进行onetnet数据上传与下载的全部内容,更多相关使用QT界面进行onetnet数据上传与下载内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部