QT学习
霍亚飞老师 Qt Creator 快速入门
「已注销」
这个作者很懒,什么都没留下…
展开
-
18.QT中的write函数
今天在传输文件的时候,发现运行后,文件是过来了,但又没完全过来,文件的大小只有几kb,而原文件几m.后面发现write函数用错了,1.write(const char *data),Writes data from a zero-terminated string of 8-bit characters to the device. Returns the number of bytes that were actually written, or -1 if an error occurred.大原创 2021-10-20 09:17:16 · 5690 阅读 · 0 评论 -
17.lambda表达式
[捕获列表](参数列表 )(mutable)->返回值类型{函数体}QT做信号和草链接的是偶,默认内部变量时锁状态,只读,如果进行写就会挂掉。所以一般用=。原创 2021-10-17 14:05:23 · 64 阅读 · 0 评论 -
17.QT中的SQLITE数据库使用
QSqlDatabase db=QSqlDatabase::addDatabase("QSQLITE");db.setDatabaseName("../MySQL/test.db");db.open();QSqlQuery query(db);query.exec("create table test(id int)");想用mysql,但是有问题,网上的答案太乱了原创 2021-10-16 17:39:01 · 86 阅读 · 0 评论 -
16.QT UDP通信
1.udp不需要建立链接,只需要在每次发送信息的时候,指定接收方的ip地址和端口号。socket=new QUdpSocket(this);//绑定端口 当对方发送给自己信息时用socket->bind(9999);connect(socket,&QUdpSocket::readyRead,this,={//读取信息大小qint64 size= socket->pendingDatagramSize();QByteArray array(size,0);//读报文,不要写原创 2021-10-14 22:36:11 · 1121 阅读 · 0 评论 -
15.QT tcp通信
1.使用网络通信,需要在工.pro文件加入network模块主要使用的是两个信号newConnection和readReady,前者在服务器端得到客户端的套接字,后者是当对方有数据发送过来时触发的信号2.服务器端用到QTcpServer用来创建一个服务器,用来监听链接,QTcpSocket用来通信QTcpServer *server=new QTcpServer(this);server.listen(“127.0.0.1”,9999);//监听本机9999端口,等待客户端链接当客户端链接成功后原创 2021-10-14 16:15:52 · 127 阅读 · 0 评论 -
15.QT中的小知识(Q_OBJECT)
1.只有加入了Q_OBJECT,你才能使用QT中的signal和slot机制2.explicit(清楚地,明白的,不隐晦的) 防止隐式转化https://blog.csdn.net/guoyunfei123/article/details/89003369?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163405248016780271557398%2522%252C%2522scm%2522%253A%252220140713.130转载 2021-10-12 23:33:41 · 146 阅读 · 0 评论 -
15.QT杂知识补充(.h和.cpp文件)
MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)MainWindow继承了QMainWindow,参数列表给基类的构造函数赋值:public xx 是继承,:xx()是参数列表赋值2…h和.cpp文件都可以写函数,只不过只有cpp文件能运行,头文件只有需要的时候加3.#ifndef XXX_H#define XXX_H#endif_XXX_H_是任意的,上述代码可以解...原创 2021-10-12 19:24:19 · 1301 阅读 · 0 评论 -
14.QT中QStandardItemModel的使用
#include#include#include#include#include#includeint main(int argc,char *argv[]){QApplication app(argc,argv);QStandardItemModel model;QStandardItem *parentItem=model.invisibleRootItem();QStandardItem *item0=new QStandardItem;item0->setText(“A原创 2021-10-12 14:51:55 · 1032 阅读 · 0 评论 -
14.QT总结(播放音频,顶层菜单响应)
1.用相对路径来播放音频,但是QUrl::fromLocalFile()使用相对路径时或者资源路径时,会无法播放,那么可以使用QDir类将相对路径转为绝对路径。player=new QMediaPlayer;QDir dir;QString path=dir.absoluteFilePath("…/Snake/music/firestorm.mp3");player->setMedia(QUrl::fromLocalFile(path));//写成资源路径就会报错原创 2021-10-11 14:38:26 · 434 阅读 · 0 评论 -
14.QT中写入xml文件
QFile file("…/MyXMLW/my.xml");file.open(QIODevice::WriteOnly);//以只写方式打开文件QTextStream stream(&file);//文本流QDomDocument doc;//写xml说明,xml中双引号和单引号效果相同doc.createProcessingInstruction(“xml”,“version=‘1.0’ encoding=‘utf-8’”);QDomElement ele= doc.createEl原创 2021-10-09 17:41:31 · 1247 阅读 · 0 评论 -
13.QT中读取xml文件
QFile file("…/MyXML/my.xml");file.open(QIODevice::ReadOnly);//以只读方式打开文件QDomDocument doc;doc.setContent(&file);//设置文档内容,自动解析为DOM树,并保存到内存file.close();QDomElement root= doc.documentElement();//得到根节点// qDebug()<<root.tagName();QDomNode node=原创 2021-10-09 17:16:09 · 606 阅读 · 2 评论 -
12.QT给控件设置背景
this->setObjectName(“window”);//设置背景的时候,this->setStyleSheet("QMainWindow#window{background-image: url(:/img/background.jpg);} ");原创 2021-10-09 09:49:45 · 219 阅读 · 0 评论 -
12.QT五子棋游戏规则判定
https://blog.csdn.net/qq_37012376/article/details/82898080?ops_request_misc=&request_id=&biz_id=102&utm_term=c++%E4%BA%94%E5%AD%90%E6%A3%8B%E8%A7%84%E5%88%99&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-0-828转载 2021-09-30 10:50:21 · 174 阅读 · 0 评论 -
9.界面设计师键盘操作
选中控件1.方向键 每次移动10像素2.ctrl+方向键 每次移动1像素3.shift+方向键 放大10像素4.ctrl+shift+方向键 放大1像素原创 2021-09-22 19:47:37 · 91 阅读 · 0 评论 -
./,../,/
1、./是当前目录2、…/是父级目录3、/是根目录原创 2021-09-22 10:41:00 · 478 阅读 · 0 评论 -
霍亚飞老师Qt快速入门中xml的一个setContent错误
始终报错,最简单的解决办法,把xml中第一行删除,即版本信息那行原创 2021-09-20 10:30:04 · 348 阅读 · 0 评论 -
.h和.cpp文件分别的作用
https://www.cnblogs.com/fenghuan/p/4794514.html转载 2021-09-14 17:33:52 · 173 阅读 · 0 评论 -
9.棋盘新界面
1.枚举的使用 enum ChessType{empty,white,black};默认为0,1,2 使用的时候ChessType::empty2.Bool flag默认为假3.新界面:新建一个qt设计师面,加入laout,然后调用layout的setWidget函数原创 2021-09-13 19:50:11 · 78 阅读 · 0 评论 -
安装Mysql
1.卸载mysql服务文章:https://blog.csdn.net/weixin_43579015/article/details/117228159?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163131471016780261948700%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=163131471016780261转载 2021-09-12 16:42:55 · 182 阅读 · 0 评论 -
8.绘制棋盘的笔记
1.closeEvent(QCloeseEvent *event) event->accept(),event->ignor();2.resizeEvent(QResizeEvent *event) event->oldsize(),event->size();3.不要在画图事件中使用update()否则就属于死循环了4.Pixmap 的load函数加载图片5.函数切换需要资源6.变量都设置为私有,通过公有函数去访问7.memset(ChessData,0,sizeof原创 2021-09-12 15:34:36 · 74 阅读 · 0 评论 -
7.Qt中的路径问题
./ 表示当前目录位置…/表示当前目录上一级目录位置xx/表示进入xx目录里:/表示引用资源文件可以用如下语句来测试QDir dir(“xx”);dir.absolutePath();原创 2021-09-11 10:00:45 · 173 阅读 · 0 评论 -
qt程序打包为安装程序,运行在其他电脑上
1.切换为release,运行2.点击项目文件在explorer中显示,并且返回上一级目录3.点击xxrelease文件下的release文件,复制可执行文件到一个空文件中4.在该文件下进入cmd,输入:windeployqt First.exe然后打开文件会多出这些:(现在就已经可以在别人没有安装qt的电脑上运行了,但是更进一步生成安装程序)5.接下来安照这篇文章走就可以了https://blog.csdn.net/signjing/article/details/7855855注原创 2021-07-07 10:56:04 · 706 阅读 · 0 评论 -
关于为按钮设置快捷键
QShortcut* shortCut=newQShortcut(QKeySequence(Qt::Key_Return),this);//connect(shortCut,SIGNAL(activated()),ui->add,SLOT(click()));//connect(shortCut,&QShortcut::activated,ui>add,&QPushButton::click);原创 2021-07-04 09:25:46 · 199 阅读 · 0 评论 -
qt中的enter键
1.Qt::key_Enter是小键盘中的2.Qt::key_Return是大键盘上的原创 2021-07-04 09:21:31 · 1219 阅读 · 0 评论 -
去除窗口图标
setWindowFlags(Qt::Drawer)原创 2021-07-04 09:12:23 · 865 阅读 · 1 评论 -
qt中帮助文档位置和no member named in ui问题
1.帮助文档在电脑开始菜单中找到Qt文件,点击就可以看到assistant2.no member 问题点击构建原创 2021-07-03 21:34:33 · 5742 阅读 · 0 评论