`
yaogangshi
  • 浏览: 73336 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

QDateTime在autoexp.dat中的设置

    博客分类:
Qt 
阅读更多

在前面的文章 中,讲解了如何编辑autoexp.dat方便调试的时候可以可视化变量的值。

这里再给出一个例子,QDateTime在Qt的安装包里没有的。

 

QDateTime|*::QDateTime{
	preview
	(
		#(
			"ref=",[((QAtomicInt*)($e.d.d))->_q_value,d],
			[(QDate*)((int)($e.d.d)+4)]," "
			[(QTime*)((int)($e.d.d)+8)]
		)
	)
	children
	(
		#(
			[ref]:[(QAtomicInt*)($e.d.d)],
			[date]:[(QDate*)((int)($e.d.d)+4)],
			[time]:[(QTime*)((int)($e.d.d)+8)]
		)
	)
}

 QDate也是没有的,但是比较复杂。

 

QDate|*::QDate{
	preview  
	( 
		#if ($e.jd < 2299161)(
			#if( (((4 * ($e.jd + 32082) + 3) / 1461) - 4800 + ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10)) > 0)(
				#(
					"year=",[((4 * ($e.jd + 32082) + 3) / 1461) - 4800 + ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10),d],
					", month=",[(((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) + 3 - 12 * ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10),d],
					", day=",[(($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4) - (153 * (((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) + 2) / 5 + 1,d]
				)
			)
			#else(
				#(
					"year=",[((4 * ($e.jd + 32082) + 3) / 1461) - 4800 + ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10)-1,d],
					", month=",[(((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) + 3 - 12 * ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10),d],
					", day=",[(($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4) - (153 * (((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) + 2) / 5 + 1,d]
				)
			)	
		)		
		#else(
			#(
				"year=",[100 * (((4 * ($e.jd + 68569)) / 146097) - 49) + ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001) + ((80 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31)) / 2447) / 11,d],
				", month=",[(80 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31)) / 2447 + 2 - (12 * (((80 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31)) / 2447) / 11)),d],
				", day=",[(($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31) - (2447 * ((80 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31)) / 2447)) / 80,d]
			)
		)
	)
	children 
	(
		#if ($e.jd < 2299161)(
			#if( (((4 * ($e.jd + 32082) + 3) / 1461) - 4800 + ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10)) > 0)			(
				#(
					[year]:[((4 * ($e.jd + 32082) + 3) / 1461) - 4800 + ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10),d],
					[month]:[(((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) + 3 - 12 * ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10),d],
					[day]:[(($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4) - (153 * (((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) + 2) / 5 + 1,d]
				)
			)
			#else(
				#(
					[year]:[((4 * ($e.jd + 32082) + 3) / 1461) - 4800 + ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10)-1,d],
					[month]:[(((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) + 3 - 12 * ((((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) / 10),d],
					[day]:[(($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4) - (153 * (((5 * (($e.jd + 32082) - (1461 * ((4 * ($e.jd + 32082) + 3) / 1461)) / 4)) + 2) / 153) + 2) / 5 + 1,d]
				)
			)	
		)
		#else(
			#(
				[jd]: [$e.jd,d],
				[year]:[100 * (((4 * ($e.jd + 68569)) / 146097) - 49) + ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001) + ((80 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31)) / 2447) / 11,d],
				[month]:[(80 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31)) / 2447 + 2 - (12 * (((80 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31)) / 2447) / 11)),d],
				[day]:[(($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31) - (2447 * ((80 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) - (1461 * ((4000 * (($e.jd + 68569 - (146097 * ((4 * ($e.jd + 68569)) / 146097) + 3) / 4) + 1)) / 1461001)) / 4 + 31)) / 2447)) / 80,d]
				)
		)
	)
}
 

参考:

VS高级使用方法1:autoexp.dat使用Visual studio在debug时显示变量内容:http://yaogangshi.iteye.com/admin/blogs/974332

 

 

分享到:
评论

相关推荐

    Qt例程源代码QDateTime.7z

    Qt例程源代码QDateTime.7z

    QDateTime.7z

    QDateTime.7z

    Qt可为空值的DateTimeEdit

    自认为比较友好的时间日期编辑器,继承于QDateTimeEdit, 功能相对比较完善,调用SetEmptyEnable(true)后即可实现输入空值

    caculate2datetime.zip

    QDateTime计算时间差的代码示

    QT 时钟例子(可以自己设置时间)

    显示当前时间,也可以自己设置时间,用QT开发的,直接打开.pro文件运行即可

    QtDateTimeEx.zip

    QTimer和QDateTime的讲解和使用 时间日期相关的类: 时间日期是经常遇到的数据类型,Qt中时间日期类型的类如下。 QTime:时间数据类型,仅表示时间,如15:23:13。 QDate:日期数据类型,仅表示日期,如2017-4-5。 ...

    NetworkDateTime.zip

    提供了一个QT5通过time.windows.com获取当前网络时间,并显示时间的DEMO。该程序通过UDP读取time.windows.com的时间,将结果存储在QDateTime变量中,并可以显示在QLineEdit中。

    class58.ui

    【QTdesigner】课时58.日期和时间控件的高级操作(QDateTimeEdit)(QDateTime.currentDateTime())【pyqt5+QTdesigner模式】

    Qt Creator 的安装和hello world 程序+其他程序的编写--不是一般的好

    下载完成后,直接安装即可,安装过程中按默认设置即可。 2.运行Qt Creator,首先弹出的是欢迎界面,这里可以打开其自带的各种演示 程序。 3.我们用File-&gt;New 菜单来新建工程。 4.这里我们选择Qt4 Gui Application。 ...

    在C++程序中使用QML

    1.这里主要是介绍,如何在c++中调用QML中的函数和设置QML中的属性的问题 2.具体代码 // UICtest.qml import Qt 4.7 Rectangle { id: mainWidget; width: 640 height: 480 function callbyc(v) { mainWidget...

    qt时间轴滑动条

    基于qwt-6.1实现的时间轴滑动条,主要是slider参数设置技巧,设定起始结束日期,自动绘制时间轴,qwt请自行下载编译,qt我用的版本是5.7.1,vs2013。主要代码如下: QDateTime starData = QDateTime::fromString...

    VS2010中调试Qt QString的原生内容显示

    在VS2010中调试QString等Qt类型的时候不能显示值是不是很坑爹,这个就是为了解决此问题的工具文件,该文件包含了VS中的MFC支持,和Qt类型的支持,还增加包含了网上没有的QDateTime等的支持,将下载的文件放到 ...

    qt 类型转换

    关于QT和MFC类型转换 qstring cstring bstr qdatetime 转换

    Qt自定义实现的DateTime控件,使用样式对控件进行了美化,并添加了农历的实现,此为源码

    Qt重新自定义实现了日历控件,QCalendarWidget控件的样式表太难设置,且整体背景无法实现外发光的效果,于是重新自定义实现了改控件,并对控件的外观进行了美化,同时添加了农历的实现。使用vs2015或QtCreator都可以...

    QT 串口分析工具 UartAnalysisTool

    curDateTime = QDateTime::currentDateTime(); QString command = ""; QString showBuff = ""; command.append(data); if(isAT){ command.append("\r\n"); } if(hasTimerStamp){ // QString tempStr = ...

    QWidegtTest.7z

    QT Creator中,QTableWidget的使用非常频繁,很多场合都需要使用表格并按照一定的需求进行...简单给出介绍对QTablewidget进行汉字和QDatetime类型进行排序的方式,主要使用qSort函数,且不涉及重写QTablewidgetItem类。

    Qt自定义日历

    m_minDateTime = QDateTime::currentDateTime(); { QTime maxtime; maxtime.setHMS(23, 59, 59); m_maxDateTime.setTime(maxtime); m_maxDateTime.setDate(QDate::currentDate().addDays(365)); } ...

    C++以double方式表示时间

    VC在处理时间差时,比较烦琐。学习DELPHI的方法,以一个DOUBLE值来表示时间...C++中的std::string功能强大,一般在可以情况的都使用string; MFC中的CString功能更为强大,如果string实现不了部分,使用CString来实现。

    pyQt5实时刷新界面的示例

    from PyQt5.QtCore import QThread , pyqtSignal, QDateTime , QObject from PyQt5.QtWidgets import QApplication, QDialog, QLineEdit import time import sys class BackendThread(QObject): # 通过类成员对象...

    Python 日期时间datetime 加一天,减一天,加减一小时一分钟,加减一年

    计算年、月、日需要安装组件包 pip install python-dateutil 当前日期时间 import datetime print datetime.datetime.now() # 2018-05-08 16:53:30.101000 ...print datetime.datetime.now().strftime("%Y-%m-%d %H...

Global site tag (gtag.js) - Google Analytics