<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[WindFlowInTheSky的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/WindFlowInTheSky</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; WindFlowInTheSky]]></copyright><item><title><![CDATA[QVideoWidget不显示问题]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/130588474</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/130588474</guid><author>WindFlowInTheSky</author><pubDate>Tue, 09 May 2023 20:44:05 +0800</pubDate><description><![CDATA[网上搜罗了各种方法，最后发现竟然是因为在主程序做了如下的设置。把上述代码屏蔽后，就可以显示了。]]></description><category></category></item><item><title><![CDATA[Qt如何提取文件中的中文]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/128816052</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/128816052</guid><author>WindFlowInTheSky</author><pubDate>Tue, 31 Jan 2023 14:10:59 +0800</pubDate><description><![CDATA[Qt提取文件中的中文]]></description><category></category></item><item><title><![CDATA[关于QJsonObject用法的思考]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/124321878</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/124321878</guid><author>WindFlowInTheSky</author><pubDate>Thu, 21 Apr 2022 15:04:50 +0800</pubDate><description><![CDATA[文章目录
    在使用Qt的开发过程中，总会用到json格式文件作为配置文件。在很长一段时间，我在解析这种配置文件的时候，直接就是从最外层解析到最里层，每次解析的代码都让我感觉头大。
    当时也有想过难道就没有其它方式可以使用，也就是仅仅从脑海中掠过，不再作数了。直到最近看别人的代码，发现解析的过程简单明晰，特别惭愧自己的“海量代码”，故记之。
    其实方法也简单，就是把用到的数据以QMap的形式存储。具体使用QVariantMap还是QVariantList，可以根据自己的数据类型进行选择。
 ]]></description><category></category></item><item><title><![CDATA[Qt实现在多个屏幕下指定一个显示]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/121909444</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/121909444</guid><author>WindFlowInTheSky</author><pubDate>Mon, 13 Dec 2021 17:06:49 +0800</pubDate><description><![CDATA[多屏幕下指定某一个显示]]></description><category></category></item><item><title><![CDATA[如何清空QWidget里的widget]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/121697099</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/121697099</guid><author>WindFlowInTheSky</author><pubDate>Fri, 03 Dec 2021 14:02:21 +0800</pubDate><description><![CDATA[    大家在使用QWidget等容器类（Containers）的控件时，有时需要先清空里面原来的控件，加入新的控件。添加的操作都比较熟悉，那么如何进行删除呢？不卖关子，代码奉上：
QLayout* _layout = ui.widget-&gt;layout();
if (_layout)
{
	int xdd = _layout-&gt;count();
	for (int i = 0; i &lt; _layout-&gt;count(); ++i)
	{
		if (QLayoutItem* _it]]></description><category></category></item><item><title><![CDATA[自动重命名算法]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/121509776</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/121509776</guid><author>WindFlowInTheSky</author><pubDate>Wed, 24 Nov 2021 10:35:54 +0800</pubDate><description><![CDATA[      应用场景：在Qt中使用QListWidget或者QTreeWidget时，有时候需要从数据库中初始化一些数据，放到这些Widget里面。但是数据库里或者文件里的数据，名称可能有重复的，但是在可视化的过程中，是不能呈现两个一样的文件名。
     示例：在数据库中有以下几个重名但ID不同的条目：

新建文件
新建文件
新建文件

当把它们放到QListWidget中时，我们希望显示的效果如下：

新建文件
新家文件(1）
新建文件(2）

怎么实现上面所说效果呢？代码如下：
   /*
	@bas]]></description><category></category></item><item><title><![CDATA[Squish for Qt：为Qt应用量身打造的自动化测试工具]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/119111331</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/119111331</guid><author>WindFlowInTheSky</author><pubDate>Mon, 26 Jul 2021 15:56:28 +0800</pubDate><description><![CDATA[转载地址：https://mp.weixin.qq.com/s?__biz=MzI5MzA3NzU3OA==&amp;mid=2649661399&amp;idx=1&amp;sn=7b584cfc54e529d6ce605274d8f7bc0b&amp;chksm=f46da8f2c31a21e4eccfe9ee0eb690045cdd8a074af0e57bceb8f605c5fcb2fb72c9d7334c28&amp;mpshare=1&amp;scene=1&amp;srcid=0726zRxZM]]></description><category></category></item><item><title><![CDATA[QDockWidget]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/118085424</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/118085424</guid><author>WindFlowInTheSky</author><pubDate>Mon, 21 Jun 2021 14:02:52 +0800</pubDate><description><![CDATA[在Qt Designer中，拖动Dock Widget到MainWindow界面中时，当拖动多个时，这些Dock Widget会自动紧挨着彼此在一起。比如你想布局三个Dock Widget，实现左一右二的排列。怎么办呢？当时因为疏忽，没有好好看它的属性，心里还暗想：Qt设置的这个Dock Widget真难用，其实是没有好好学习并了解它。
在Dock Widget“属性编辑器”列表里，有一个属性“dockWidgetArea”，通过设置它，就可以实现上面所说的排列方式。
“dockWidgetArea”：Le]]></description><category></category></item><item><title><![CDATA[一句话的思考]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/117658387</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/117658387</guid><author>WindFlowInTheSky</author><pubDate>Mon, 07 Jun 2021 13:22:40 +0800</pubDate><description><![CDATA[今天读到一段话：

人所拥有的任何东西，都可以被剥夺，唯独人性最后的自由–也就是在任何境遇中选择一己态度和生活方式的自由-----不能被剥夺

诗和音乐的出现，仿佛就是在响应人性最后的自由。“自古逢秋悲寂寥，我言秋日胜春朝”就是在阐述这种自由。这让我想到了当前生活中思维处于的“囚徒困境”，大家都在追求更好、更有意思的生活，但究竟什么是更好、更有意思呢？
我发现这种说法，中国古代的先贤早就总结的很完善了，只是表述的方式不一样而已。
为什么这种表达方式更触动，听起来更加合理呢？我想可能是掺杂着现代人对西方科学的]]></description><category></category></item><item><title><![CDATA[Qt之反射编程]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/115088596</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/115088596</guid><author>WindFlowInTheSky</author><pubDate>Mon, 22 Mar 2021 18:08:51 +0800</pubDate><description><![CDATA[这篇文章主要介绍反射（reflection）的基本思想。

所谓反射，就是指对象成员的自我检查。

使用反射编程（reflective programming），就可以编写出通用的操作，可对具有各种不同结构的类进行操作。

使用通用的值存储器QVariant，就可以按照一种统一的方式来对基本类型和其它普通类型进行操作。

在介绍反射编程之前，需要了解几个概念：

元对象
所谓元对象（meta object），就是描述另一个对象结构的对象。

元对象模式
QMetaObject是元对象模式（MetaObjec]]></description><category></category></item><item><title><![CDATA[制作CHM格式电子书之软件风云榜]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/114013363</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/114013363</guid><author>WindFlowInTheSky</author><pubDate>Wed, 24 Feb 2021 11:00:54 +0800</pubDate><description><![CDATA[希望看到本文的读者，如果有更好的制作方案，请一起分享出来，大家探讨一下。

1. Easy CHM

优点：用Word生成的html文件，放到工程目录中，添加.html文件到工程目录，直接就可以显示。

缺点：贵。



2.CHM Editor

优点：呃，能用；

缺点：在分级目录时，如果有大量图片，不能将其自动加载到程序中，Easy CHM就做到了。



3. DOC2CHM

江湖上听过你的名字，可是找不到，不知道是不是已经圆寂了。
...]]></description><category></category></item><item><title><![CDATA[Qt中QSQLites数据库操作]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/113387496</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/113387496</guid><author>WindFlowInTheSky</author><pubDate>Fri, 29 Jan 2021 14:50:19 +0800</pubDate><description><![CDATA[创建数据库：


QSqlDatabase database;
database = QSqlDatabase::addDatabase("QSQLITE", CONNECTION_NAME);
database.setDatabaseName("D:\test.db");     //不指示路径的话，数据库不会生成到想去的地方
if (!database.open())
{
	qDebug() &lt;&lt; "Error: Failed to connect database." &lt;&lt; d]]></description><category></category></item><item><title><![CDATA[QListWiget右键实现重命名功能]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/111036570</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/111036570</guid><author>WindFlowInTheSky</author><pubDate>Fri, 11 Dec 2020 15:47:19 +0800</pubDate><description><![CDATA[刚开始学习Qt的时候，对于实现这种功能需要去网上找前辈的代码参考一下，但是发现就算是这样的一个小功能，都写的大同小异，最重要的是不可用！

自己动手，丰衣足食。

1. Test.h代码部分：


void on_listWidget_customContextMenuRequested(const QPoint&amp; pos);

2. 以下代码可以放到构造函数中：


ui.listWidget-&gt;setContextMenuPolicy(Qt::CustomContextMenu);
...]]></description><category></category></item><item><title><![CDATA[Qt中QTreeWidget（QTreeView）样式设置]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/108508069</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/108508069</guid><author>WindFlowInTheSky</author><pubDate>Thu, 10 Sep 2020 09:59:41 +0800</pubDate><description><![CDATA[QTreeView {    
	background-color: rgb(35, 40, 49);
    outline: 0px;                 /*消除QTreeWidgetItem外层虚线框*/
	border: 0px solid #000000;
}
QTreeView::item {
     border: 1px solid #000000;
    border-top-color: transparent;
	border-left-color: transpa.]]></description><category></category></item><item><title><![CDATA[正确解决问题——应用程序无法正常启动（0xc0000007b）]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/108484323</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/108484323</guid><author>WindFlowInTheSky</author><pubDate>Wed, 09 Sep 2020 11:01:36 +0800</pubDate><description><![CDATA[目录

1. 发生原因

2. 解决思路

2.1 程序引用的库文件跟系统的不兼容

2.2缺乏dx运行环境（概率较低）

3. 思路误区

3.1程序是32还是64位

1. 发生原因

应用程序无法正常启动，出现0xc000007b错误，如下图所示



根本原因：缺乏所需要的DLL，提供了错误版本的dll相当于没有DLL，提示完全一样。

2. 解决思路

2.1 程序引用的库文件跟系统的不兼容

直接找开发者要开发使用的库文件。

发布的时候，需要vc或mfc环境，release 版本到你的开发..]]></description><category></category></item><item><title><![CDATA[Qt中QTabWidget的使用]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/108195657</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/108195657</guid><author>WindFlowInTheSky</author><pubDate>Mon, 24 Aug 2020 11:16:09 +0800</pubDate><description><![CDATA[1. 在Qt Designer中的基本设置

QTabWidget可以在Qt Designer中进行基本的静态设置，这对于开发时制定开发框架很有帮助。

1.1 增加页

右键tabWidget，在弹出菜单中选择“插入页”-》“在当前页之前”/“在当前页之后”。

1.2 删除页

右键tabWidget，在弹出菜单中选择“2的页1”-》“删除”。其中“2的页1”表示有2个tab，当前选择的是1。
...]]></description><category></category></item><item><title><![CDATA[VS2017中版本号管理]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/107832433</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/107832433</guid><author>WindFlowInTheSky</author><pubDate>Thu, 06 Aug 2020 10:47:43 +0800</pubDate><description><![CDATA[VS中如何管理版本号以及通过代码查看版本信息。]]></description><category></category></item><item><title><![CDATA[Qt中QMessageBox]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/107814173</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/107814173</guid><author>WindFlowInTheSky</author><pubDate>Wed, 05 Aug 2020 14:18:37 +0800</pubDate><description><![CDATA[1. 汉化提示按钮

如果我们使用QMessageBox的静态函数方式显示提示框的话，默认按钮都是英文，如果想要显示中文，很简单：


QMessageBox _warninigDia(QMessageBox::Warning, "警告", "删除可能造成其它问题\n确定要删除吗？"
		, QMessageBox::Apply | QMessageBox::Cancel);
_warninigDia.setButtonText(QMessageBox::Apply, "确定");
_warninigDia]]></description><category></category></item><item><title><![CDATA[Qt中读取本地JSON格式文件]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/107706907</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/107706907</guid><author>WindFlowInTheSky</author><pubDate>Fri, 31 Jul 2020 09:57:06 +0800</pubDate><description><![CDATA[void CommentDataManger::readJsonFile()
{
	QJsonObject json;
	QString strPath = QCoreApplication::applicationDirPath();
	QDir dir(strPath);
	dir.cd("config/");
	QString _strPath = dir.absolutePath() + "/myFile.json";
	QFile _file(_strPath);
	if (_file.open.]]></description><category></category></item><item><title><![CDATA[VS项目中目录结构混乱]]></title><link>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/107377014</link><guid>https://blog.youkuaiyun.com/WindFlowInTheSky/article/details/107377014</guid><author>WindFlowInTheSky</author><pubDate>Thu, 16 Jul 2020 10:11:54 +0800</pubDate><description><![CDATA[在合并代码的时候，误删了Project.vcxproj.filters文件，导致打开程序的时候，.h文件和.cpp文件杂乱无章的显示，后来通过咨询办公室的大牛，知道是因为Project.vcxproj.filters文件丢失的结果。
]]></description><category></category></item></channel></rss>