<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[yang843094036的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/yang843094036</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; yang843094036]]></copyright><item><title><![CDATA[qt事件系统源码-----定时器]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/132247363</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/132247363</guid><author>yang843094036</author><pubDate>Sat, 12 Aug 2023 14:06:04 +0800</pubDate><description><![CDATA[几经周转，会进入到QEventDispatcherWin32的event方法中，此处是ZeroTimerEvent事件，会调用QCoreApplication::sendEvent方法，向定时器事件的QObject对象发送一个QTimerEvent事件，从而转入到QObject的event方法中执行；精度要求不高的事件，会调用windows API的setTimer函数，注册一个定时器事件，此事件的回调函数为nullptr，qt会使用windows系统产生的WM_TIMER事件；]]></description><category></category></item><item><title><![CDATA[qt源码---事件系统之QCoreApplication]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/132132344</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/132132344</guid><author>yang843094036</author><pubDate>Sun, 06 Aug 2023 18:28:57 +0800</pubDate><description><![CDATA[wakeUp函数会调用WinAPI的PostMessage函数，投递一个WM_QT_SENDPOSTEDEVENTS事件，其会被processEvent函数捡取到，并最终转入QCoreApplicationPrivate中的sendPostedEvents函数处理（具体可以参考上一节）；此处会判断接收的对象是否在主线程中，如果是在主线程中，会检测QCoreApplication的对象是否安装了事件过滤器，如果此事件被QCoreApplication事件过滤器检测到并被处理，并不会向下传递；]]></description><category></category></item><item><title><![CDATA[qt源码--事件系统之QAbstractEventDispatcher]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/131997399</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/131997399</guid><author>yang843094036</author><pubDate>Sun, 30 Jul 2023 17:58:46 +0800</pubDate><description><![CDATA[2、qt通过processEvents函数不断捡取windows系统中的消息、自定义消息，并通过windowsAPI中的TranslateMessage函数翻译消息，DispatchMessage派发消息，将事件转入到qt_internal_proc中；1、qt通过注册一个隐藏的windows窗体类（主要时qt_internal_proc钩子函数），接收windows系统中的消息事件，并调用QCoreApplicationPrivate类中的sendPostedEvent函数，切入到qt的事件循环中；]]></description><category></category></item><item><title><![CDATA[qt源码--事件系统]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/131624418</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/131624418</guid><author>yang843094036</author><pubDate>Sun, 09 Jul 2023 18:36:56 +0800</pubDate><description><![CDATA[qt源码--事件系统底层处理]]></description><category></category></item><item><title><![CDATA[QTableWidget加载大文件数据]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/130901380</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/130901380</guid><author>yang843094036</author><pubDate>Sat, 27 May 2023 17:29:05 +0800</pubDate><description><![CDATA[QTableWidget加载大文件数据显示]]></description><category></category></item><item><title><![CDATA[QObject源码--剩余内容]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/129474700</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/129474700</guid><author>yang843094036</author><pubDate>Sun, 19 Mar 2023 17:45:55 +0800</pubDate><description><![CDATA[这样做应该是防止待删除对象执行其析构函数时消耗时间太长，而此时又执行了setParent方法时会引起异常（删除的对象又再次被添加到其他对象的children列表中，可以结合setParent方法理解）。遍历children列表，查找子对象中和T对象有继承关系的对象，且name为空或者和objectName相匹配时，既返回当前对象；判断新的parent对象和当前对象是否为同一线程，如果不在同一个线程在抛出警告信息，并返回（如果不在同一个线程，则QObject对象内存无法自动被回收，需要手动删除）；]]></description><category></category></item><item><title><![CDATA[qt源码--信号槽]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/129218528</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/129218528</guid><author>yang843094036</author><pubDate>Sat, 25 Feb 2023 19:27:42 +0800</pubDate><description><![CDATA[qt信号与槽源码分析]]></description><category></category></item><item><title><![CDATA[qt调用matlab生成的dll库]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/128740344</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/128740344</guid><author>yang843094036</author><pubDate>Fri, 20 Jan 2023 11:25:07 +0800</pubDate><description><![CDATA[qt调用matlab的dll库]]></description><category></category></item><item><title><![CDATA[qt源码---QMetaObject（五）]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/127164476</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/127164476</guid><author>yang843094036</author><pubDate>Tue, 04 Oct 2022 19:33:52 +0800</pubDate><description><![CDATA[qt源码，QMetaProperty]]></description><category></category></item><item><title><![CDATA[qt源码学习----QMetaObject（四）]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/127156450</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/127156450</guid><author>yang843094036</author><pubDate>Mon, 03 Oct 2022 21:35:32 +0800</pubDate><description><![CDATA[qt源码，QMetaEnum]]></description><category></category></item><item><title><![CDATA[qt源码学习---QMetaObject（三）]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/127135974</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/127135974</guid><author>yang843094036</author><pubDate>Sat, 01 Oct 2022 20:03:52 +0800</pubDate><description><![CDATA[qt源码，QMetaMethod]]></description><category></category></item><item><title><![CDATA[qt源码学习----QMetaObject（三）]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/127128698</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/127128698</guid><author>yang843094036</author><pubDate>Fri, 30 Sep 2022 21:10:33 +0800</pubDate><description><![CDATA[qt源码，QMetaObject中方法存储结构图]]></description><category></category></item><item><title><![CDATA[qt源码学习---QMetaObject（二）]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/126920780</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/126920780</guid><author>yang843094036</author><pubDate>Sun, 25 Sep 2022 13:49:35 +0800</pubDate><description><![CDATA[qt源码分析]]></description><category></category></item><item><title><![CDATA[qt源码学习--QMetaObject（一）]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/126820834</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/126820834</guid><author>yang843094036</author><pubDate>Mon, 12 Sep 2022 20:02:07 +0800</pubDate><description><![CDATA[qt源码学习--QMetaObject部分]]></description><category></category></item><item><title><![CDATA[Qt源码学习--QObject（一）]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/126807445</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/126807445</guid><author>yang843094036</author><pubDate>Sun, 11 Sep 2022 18:12:33 +0800</pubDate><description><![CDATA[qt源码学习记录]]></description><category></category></item><item><title><![CDATA[编写一个静态方法histogram()，接受一个整形数组a[]和一个整数M为参数并返回一个大小为M的数组，其中第i个元素的值为整数i在数组中出现的次数。]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/103579864</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/103579864</guid><author>yang843094036</author><pubDate>Tue, 17 Dec 2019 14:28:43 +0800</pubDate><description><![CDATA[编写一个静态方法histogram()，接受一个整形数组a[]和一个整数M为参数并返回一个大小为M的数组，其中第i个元素的值为整数i在数组中出现的次数。如果a[]中的值均在0到M-1之间，返回数组中所有元素之和应该和a.length相等。
public static void histogram(int[] a, int m) {
	int[] buf = new int[m];
	
	for (...]]></description><category></category></item><item><title><![CDATA[编写一个静态方法lg()，接收一个整型参数N，返回不大于log2(N)的最大整数。]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/103527902</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/103527902</guid><author>yang843094036</author><pubDate>Fri, 13 Dec 2019 15:19:31 +0800</pubDate><description><![CDATA[/**
  * 将lg2(N)转换为2(N)指数函数来计算。
  * @param n
  * @return
  */ 
 public static int lg(int n) {
  int k = 0;
  int tmp = 1;
  while(tmp &lt;= n) {
   tmp *= 2...]]></description><category></category></item><item><title><![CDATA[Linux下使用pyvisa控制GPIB设备]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/95487619</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/95487619</guid><author>yang843094036</author><pubDate>Thu, 11 Jul 2019 16:10:41 +0800</pubDate><description><![CDATA[Linux下使用pyvisa控制GPIB设备
1、目的
	由于在Linux环境下安装NI-488.2驱动花费很长时间，而且出现的问题比较多，所以特此记录下。

2、安装步骤
2.1下载镜像文件
从NI官网上下载NI-488.2和NI-Visa镜像文件。官网地址
http://www.ni.com/zh-cn/support/downloads/drivers.html

2.2安装镜像文件
将镜像...]]></description><category></category></item><item><title><![CDATA[linux下MySQL使用中文遇到的问题]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/79015760</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/79015760</guid><author>yang843094036</author><pubDate>Tue, 09 Jan 2018 17:58:25 +0800</pubDate><description><![CDATA[1、在向MySQL中插入含有中文的字段时，出现ERROR 1366 (HY000): Incorrect string value: '\xE5\x93\x88\xE5\x93\x88' for column 'answer' at row 1等字段时，使用show create table table_name查看表的编码：

（注：上图是修改过的）未修改的出现的是：CHARSET=Lati]]></description><category></category></item><item><title><![CDATA[Python 2.7（64位）安装mysql数据库]]></title><link>https://blog.youkuaiyun.com/yang843094036/article/details/78597176</link><guid>https://blog.youkuaiyun.com/yang843094036/article/details/78597176</guid><author>yang843094036</author><pubDate>Tue, 21 Nov 2017 21:28:41 +0800</pubDate><description><![CDATA[1、下载mysqldb源码，https://pypi.python.org/pypi/MySQL-python/1.2.5解压后执行 python setup.py install 
提示错误: fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory
2、如果出现上述错误，需要安装M]]></description><category></category></item></channel></rss>