04 2013 档案

类HTML语法显示格式化文本
摘要:介绍项目需要,在自定义控件中显示格式化文本。支持格式化的文本语法,接触过的有HTML、RTF等。由于HTML使用广泛,决定采用类似HTML的语法。该语法按树状结构组织,需要支持以下格式:对齐:垂直居中对齐;水平居左居中居右对齐换行:\n颜色:<color="...">...</color>图标:<icon="..."/>*: 对齐在显示整个文本时统一指定。假设有以下文本:普通文本<color="#FF0000">红色文本<icon="icon.ico"/> 阅读全文

posted @ 2013-04-20 14:40 genofu 阅读(429) 评论(0) 推荐(0)

简易内存池实现
摘要:修订2013-04-15代码中的New函数,使用DWORD保存4字节对齐后的大小,避免wSize接近65536时对齐为65536后溢出。Block结构添加prev指针,used及unused修改为双链表,避免Delete时的定位开销。介绍 项目需要自定义一个表格控件,涉及到多行多列文本的显示。考虑到字符串指针较多的情况下,性能较低以及容易产生内存碎片,为此实现了一个内存池。该内存池具有以下特点:不能分配接近及超过64k的内存(一般情况下,表格列不会包含如此长的文本)。分配次数较多,单个释放次数较少(表格内容填充后不易变更,可以在删除表格时一次释放整个内存池)。允许一定内存冗余,以减少内存碎片( 阅读全文

posted @ 2013-04-14 12:26 genofu 阅读(522) 评论(0) 推荐(0)