TQDataSet 新提供了一个 OnCustomSort 属性,用于让用户指定自己的排序规则。如果设置了 OnCustomSort 事件的值,则 TQDataSet 会调用 OnCustomSort 事件来获取两条记录的比较结果。下面是一个在 Windows 下按拼音排序的例子: //按拼音比较两条记录的大小 pro
月度归档: 2015年3月
QWorker 更新 – 修正了重复作业间隔很长时,比较时由于算术溢出造成的问题
【问题描述】 该问题是由于 TQRepeatJobs.DoTimeCompare 函数的问题没有考虑到算术溢出问题造成的,原来的比较代码如下: function TQRepeatJobs.DoTimeCompare(P1, P2: Pointer): Integer; begin Result := PQJob(P1)
按自然语言规则进行字符串排序
QString 新提供了一个 NaturalCompareW 函数(兼容Delphi/C++ Builder 2007+)为大家提供按自然语言规则进行比较大小,也就是所谓的自然排序。所谓的自然排序是指像字母后面跟数字的情况下,不是按照字符本身的顺序,而是按照数字的值的顺序进行排序。如:A2 A10 A1 这三个字符串,
【被C折腾系列】用C调DIOCP编码客户端通信
前几天有个朋友,说他们公司做手游,服务端用的DIOCP3里面做文件服务器,客户端用cocos-x,在调试与diocp通信时老是失败! 于是,我下载了一个Codeblocks经过几个小时的折腾,终于折腾出来了,把其中的一些心酸记录下,以便以后查阅。 1.windows下面使用socket的一些
[QDB] TQDataSet 过滤表达式支持的操作符详解
TQDataSet 的 Filter 属性相比系统自带的数据表组件过滤表达式,进行了很大的增强,以方便用户使用。它支持以下操作符: 常见的比较操作:=、>、>=、<、<=、!=、<>,其中 != 和 <> 等价,代表不等于 模糊匹配操作:*、!*、like、nlike 分
[QDB] QDataSet 的排序表达式详解
QDataSet 支持通过设置 Sort 属性指定排序规则,它支持的基本语法格式为: 字段名1 [ASC|IASC|NASC|NIASC|DESC|IDESC|NDESC|NIDESC][[,|;] 字段名2…] 字段名后面的排序顺序关键词可以省略,如果省略则按升序区分大小写排序,而这些关键词本身不区分大小
[QDB] QDataSet 做为内存表使用时插入性能测试
这个测试是直接测试不同类型的插入速度对比,比较了几个手头上大家提供的组件: [插入测试] 整数类型测试: QDAC:750ms,FireDAC:172ms,ADO:1656ms,KBM:157ms,CDS:1703ms 双精度浮点类型 QDAC:750ms,FireDAC:157ms,ADO:1593ms,KBM:14
[FMX]为 Label 控件设置背景颜色
在 VCL 中,修改 Label 的背景颜色是一件相当简单的事,但到了 FMX 中,Label 的外观实际上是由 Style 来控制的,如果我们不想用修改 Style 的方式来修改 Label 的背景怎么办?(一般是因为它实在是太爱出错),那么我们就可以用组合的办法来完成这一使命。 首先,我们在 FMX 的窗体设计器上