- 博客(15)
- 资源 (26)
- 收藏
- 关注
转载 Qt 富文本处理(二)
<br />文档元素<br />富文本文档通常包括一些通用的元素,例如段落、框架、表格和列表。这些在 QTextDocument 类中分别使用 QTextBlock,QTextFrame,QTextTable 和 QTextList 描述。不同于文档的其他元素,图片使用一种特殊的文本片段描述,这使得图片可以同普通文本混排。<br />文档的基本构建单位是 QTextBlock 和 QTextFrame。块本身就包含文本片段(QTextFragment),但是这不会直接影响到高层次的文档结构。<br />能够
2011-01-03 09:48:00 3156
转载 Qt 富文本处理(一)
<br />最近使用 Qt 做一个离线博客编辑器,因而用到了 Qt 的富文本处理。参考 Qt 的文档,记录下 Qt 的富文本处理的相关技术。文档地址是 http://doc.qt.nokia.com/4.7/richtext.html,本文不是文档的准确翻译,但是内容和文档是基本一致的。<br />新版本 Qt 使用 QTextDocument 类作为富文本处理的中心类。相比之下,老版本则是使用基于文本的标记语言。<br />现在,Qt 操作文档的接口可以分成两类:基于光标的接口(cursor-based
2011-01-03 09:47:00 3027
转载 深入理解信号槽(四)
<br />将 Qt 的信号槽系统与 Boost.Signals 结合使用<br />实际上,将 Qt 的信号槽系统与 Boost.Signals 结合在一起使用并非不可能。通过前面的阐述,我们都知道了二者的不同,至于为什么要将这二者结合使用,则是见仁见智的了。这里,我们给出一种结合使用的解决方案,但是并不是说我们暗示应该将它们结合使用。这应该是具体问题具体分析的。<br />将 Qt 的信号槽系统与 Boost.Signals 结合使用,最大的障碍是,Qt 使用预处理器定义了关键字 signals,slo
2011-01-03 09:46:00 774
转载 深入理解信号槽(三)
<br />信号槽的实现实例—— Qt 和 Boost<br />Qt 的信号槽和 Boost.Signals 由于有着截然不同的设计目标,因此二者的实现、强度也十分不同。将二者混合在一起使用也不是不可能的,我们将在本系统的最后一部分来讨论这个问题。<br />使用信号槽<br />信号槽是伟大的工具,但是如何能更好的使用它们?相比于直接函数调用,有三点值得我们的注意。一个信号槽的调用:或许会比直接函数调用耗费更多的时间/空间; 可能不能使用 inline; 对于代码阅读者来说可能并不友好。 <br />使
2011-01-03 09:44:00 741
转载 Android AIDL 理解及开发要点
<br />1). development/samples/ApiDemos/src/com/example/android/apis/app/<br />*.aidl, Localservice**.java RemoteService*.java, ServiceStartArguments*.java<br /><br />2). 深入解析Android 的AIDL Interface (高焕堂)<br />http://wenku.baidu.com/view/920f92ea998fcc22bc
2011-01-03 09:35:00 988
转载 linux下多线程的创建与等待详解
<br />所有线程都有一个线程号,也就是Thread ID。其类型为pthread_t。通过调用pthread_self()函数可以获得自身的线程号。<br />下面说一下如何创建一个线程。<br />通过创建线程,线程将会执行一个线程函数,该线程格式必须按照下面来声明:<br />void * Thread_Function(void *)<br />创建线程的函数如下:int pthread_create(pthread_t *restrict thread,<br /> const pth
2011-01-03 09:33:00 534
转载 Linux下PCI设备驱动程序开发
<br /> <br />一、PCI总线系统体系结构<br />PCI是外围设备互连(Peripheral Component Interconnect)的简称,作为一种通用的总线接口标准,它在目前的计算机系统中得到了非常广泛的应用。PCI提供了一组完整的总线接口规范,其目的是描述如何将计算机系统中的外围设备以一种结构化和可控化的方式连接在一起,同时它还刻画了外围设备在连接时的电气特性和行为规约,并且详细定义了计算机系统中的各个不同部件之间应该如何正确地进行交互。<br />无论是在基于Intel芯片的PC
2011-01-03 09:32:00 570
转载 Linux进程间通讯之信号量sem
信号量sem: willisway1:#include <stdio.h><br />#include <string.h><br />#include <stdlib.h>#include <sys/stat.h><br />#include <fcntl.h>#include <sys/types.h><br />#include <sys/ipc.h><br />#include <sys/sem.h>#define NR 100 <br />#define SIZE 1024static int
2011-01-03 09:30:00 600
转载 Linux内核中的红黑树
<br />红黑树是平衡二叉树的一种,它有很好的性质,树中的结点都是有序的,而且因为它本身就是平衡的,所以查找也不会出现非常恶劣的情况,基于二叉树的操作的时间复杂度是O(log(N))。Linux内核在管理vm_area_struct时就是采用了红黑树来维护内存块的。<br /><br />先到include/linux/rbtree.h中看一下红黑树的一些定义,如下: struct rb_node<br />{<br /> unsigned long rb_parent_color;<br
2011-01-03 09:28:00 497
转载 国外大师所积累的20条编程经验
<br />作者乔纳森·丹尼可(Jonathan Danylko)是一位自由职业的Web架构师和程序员,编程经验已超过20年。以下是乔纳森在这20年里,积累的一些编程经验,适合刚毕业的大学生和刚入门的程序员。如果你已是高级开发人员,或许你在本文中看到自己的身影。<br />1.估算解决问题所需要的时间<br />不要怕,承认吧!我曾见过一些程序员为了解决一个特殊问题而坐在显示器前面8小时。为自己定一个时间限制吧,1小时、30分钟或甚至15分钟。如果在这期间你不能解决问题,那就去寻求帮助,或到网上找答案,而不
2011-01-03 09:23:00 471
转载 程序员必须养成良好的代码习惯
<br />养成良好的代码习惯,就是将代码写的漂亮,执行效率也自然就得到了提升。软件开发中包含太多东西了,需求的、设计的、测试的、管理的、文化的、心里的、沟通的,需要大家自己去琢磨。<br />前天在AgileChina2009上听了Fred George的演讲,他说他以前拿自己的代码给Kent Beck看,结果Kent说这代码很垃圾,你去看看我写的Smalltalk best practice patterns吧。然后Fred George就看了这本书并且完全按照书上的要求去做,5年后当他再给Kent看自
2011-01-03 09:22:00 598
转载 程序员的十个层次 你属于哪一层?(3)
<br />第10层 大哲<br />看了这层楼的名字“大哲”,可能不少人已经猜到了这层楼的秘密,那就是你的成果必须要上升到哲学的高度,你才有机会能进到这层来。<br />当然,上升到哲学高度只是一个必要条件,牛顿的万有引力似乎也上升到了哲学的高度,因为不知道引力到底是怎么来的,但是牛顿没有被划到这一层,因为进到这层还有另外的条件,那就是你的成果必须引起了哲学上的深度思考,并能让人们的世界观向前跨进一大步。窃以为牛顿、爱因斯坦等人的成就还达不到让人们世界观向前跨进一大步的程度。<br />所以,这层楼中的人
2011-01-03 09:21:00 916
转载 程序员的十个层次 你属于哪一层?(2)
<br />第6层 学者<br />当"专家"们想继续往上一层楼爬时,他们几乎一眼就可以看到楼梯的入口,不过令他们吃惊的是,楼梯入口处竖了一道高高的门槛,上面写着"创新"二字。不幸的是,大多数人在爬到第5层楼时已经体能消耗过度,无力翻过这道门槛。<br />有少数体能充足者,可以轻易翻越这道门槛,但是并不意味着体力消耗过度者就无法翻越,因为你只是暂时还没有掌握恢复体能的方法而已,当掌握了恢复体能的方法,将体能恢复后,你就可以轻易地翻越这道门槛了。<br />怎么才能将体能恢复呢?我们的老祖宗"孔子"早就教导
2011-01-03 09:19:00 638
转载 程序员的十个层次 你属于哪一层?(1)
<br />自西方文艺复兴以来,中国在自然科学方面落后西方很多,软件领域也不例外。当然现在中国的许多程序员们对此可能有许多不同的意见,有些人认为中国的程序员水平远落后于西方,有些则认为中国的程序员个人能力并不比西方的程序员差,只是整个软件产业落后而已。<br />那么,到底中国的程序员水平比西方程序员水平差,还是中国有许多优秀的程序员达到或超过了西方程序员同等水平呢?要解决这个问题,必须先知道程序员有多少种技术层级,每个层级需要什么样的技术水平,然后再比较中国和西方在各个技术层级的人数,就可以知道到底有没有
2011-01-03 09:18:00 595
转载 成为完美程序员的10种品质
<br />谁是完美程序员?著名博客作家Alex Iskold在《明星软件工程师的10种特质》一文中给出这个问题的答案,这些特征只是更深层次品质所产生的结果,并且这是一份理想化的清单。你认为儿童网站的Flash程序员跟B2B财务交易服务公司的软件工程师品质会相同吗?那么,我们该如何从众多开发者中甄别出一名完美的程序员呢?<br />寻找完美程序员的最终标准:完美程序员能开发出满足客户期望的优秀软件。<br />因此,令人震惊的事实是完美程序员可能只精通一种编程语言,不知道什么是设计模式,并且不会在地下室里夜
2011-01-03 09:16:00 663
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人