摘要:Windows 60个常用API附录A 常用的Windows API 调用本附录列出了PowerBuilder 常用Windows API 系统调用同时给出了这些函数的功能说明方式以及应用示例下表首先给出常用API 调用的名称和扼要功能读者需要详细了解某个函数的声明格式和示例时可通过序号在本附录中找到相应说明表A 常用的Windows API 系统序号 函数 功能1 Arc() 在窗口上画一条弧线2 Beep() 让计算机按指定的频率和周期发声3 BringWindowToTop() 将窗口放置在最前面4 Chord() 绘制弦图5 CloseHandle() 释放打开对象的句柄6 Close 阅读全文
OpenGL光源位置
2011-01-26 16:40 by bingcaihuang, 7072 阅读, 2 推荐, 收藏,
摘要:OpenGL中的光照模型是一种简化的模型,这样做可以提高处理的实时性,因为复杂的光照模型或许能带来更好的光照效果,但是对系统的消耗也是很大的,况且这种简化的模型在大多数情况下也能得到不错的光照效果。 在openGL中,光照包括很多问题,比如定义光源、指定材质属性、确定光照模型等。这些问题经过看书基本都能理解,但是在openGL中控制光源的位置或许并不是个简单的问题,我花了不少时间,看了不少资料,包括网友们的文章,openGL的红宝书等。最后我认为我弄明白了如何在openGL中控制光源的位置,现在把它们总结一下。如何控制光源位置 在openGL中,光源位置的控制也是通过模型视图矩阵实现的,包括平 阅读全文
VA自动补全QT
2011-01-24 08:57 by bingcaihuang, 669 阅读, 0 推荐, 收藏,
摘要:发现用了一下,VA不能把QT的东西进行代码自动补全。于是要动下小手脚。1.在Windows系统环境变量下增加 QTDIR = 你QT的安装目录.2启动VS-工具-选项-项目和解决方案-VC++目录:可执行文件下增加:$(QTDIR)\bin包含文件下增加:$(QTDIR)\include;$(QTDIR)\src引用文件下增加:$(QTDIR)\lib库文件下增加:$(QTDIR)\lib源文件下增加 : $(QTDIR)\src确定,保存.重启VS后 VA就可以自动补全了。 阅读全文
QList内存释放
2010-12-31 16:27 by bingcaihuang, 1842 阅读, 1 推荐, 收藏,
摘要:QListT 的释放分两种情况:1.T的类型为非指针,这时候直接调用clear()方法就可以释放了,看如下测试代码将上面代码中的slist.clear(); 注释掉,内存显示为如下(任务管理器里的截图)如不去掉的话,内存显示如下图2.T的类型为指针的情况,这时候直接调用clear()方法将不能释放,先看代码上面代码运行后的内存情况如下图说明当T的类型为指针时,调用clear()方法并不能释放其内存此时void qDeleteAll ( const Container &c)方法将派上用场了,将上面代码中的注释去掉以后,再次运行程序,此时的内存情况如下图通过对比靓图,可以看出,内存已经释放, 阅读全文
QTreeWidget的用法
2010-12-30 09:02 by bingcaihuang, 7579 阅读, 0 推荐, 收藏,
摘要:QTreeWidgetItem有九个重载的函数,如果在构造的时候指定了parent,就不需要在后面用insertTopLevelItems来插入到里面,如果没有指定parent,就把所有的根节点放到QList中,然后使用insertTopLevelItems(int,QList)插入到QTreeWidget里面QTreeWidgetItem::addChild(QTreeWidgetItem*)用于根节点添加子节点QTreeWidget::setColumnCount用于设置表中的列的列数目,在表头中会有对应的显示,如果要隐藏表头,使用QTreeWidget::setHeaderHidden( 阅读全文
使用Visual Leak Detector检测内存泄漏
2010-12-24 09:19 by bingcaihuang, 649 阅读, 0 推荐, 收藏,
摘要:1.初识Visual Leak Detector 灵活自由是C/C++语言的一大特色,而这也为C/C++程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐蔽性,不容易被发现。然而不管内存泄漏多么轻微,当程序长时间运行时,其破坏力是惊人的,从性能下降到内存耗尽,甚至会影响到其他程序的正常运行。另外内存问题的一个共同特点是,内存问题本身并不会有很明显的现象,当有异常现象出现时已时过境迁,其现场已非出现问题时的现场了,这给调试内存问题带 阅读全文
什么是线程同步
2010-12-24 09:06 by bingcaihuang, 1869 阅读, 0 推荐, 收藏,
摘要:在编写多线程程序时无可避免会遇到线程的同步问题。什么是线程的同步呢? 举个例子:如果在一个公司里面有一个变量记录某人T的工资count=100,有两个主管A和B(即工作线程)在早一些时候拿了这个变量的值回去 ,过了一段时间A主管将T的工资加了5块,并存回count变量,而B主管将T的工资减去3块,并存回count变量。好了,本来T君可以得到102块的工资的,现在就变成98块了。这就是线程同步要解决的问题。 在.Net的某些对象里面,在读取里面的数据的同时还可以修改数据,这类的对象就是“线程安全”。但对于自己编写的代码段而言,就必须使用线程同步技术来保证数据的完整性和正确性了。有几个规律:1 阅读全文
消除WINVER警告
2010-12-24 09:02 by bingcaihuang, 762 阅读, 0 推荐, 收藏,
摘要:一、WINVER Compile result: WINVER not defined. Defaulting to 0x0502 (Windows Server 2003) windows server 2003 winver=0x0502 windows xp winver=0x0501 windows 2000 winver=0x0500 windows nt 4.0 winver=0x0400 windows me winver=0x0500 windows 98 winver=0x0410 windows 95 winver=0x0400在stdafx.h的开头定义:0 阅读全文
文件路径 正斜杠和反斜杠
2010-12-22 09:37 by bingcaihuang, 13271 阅读, 1 推荐, 收藏,
摘要:c++中\\是一种转义字符,他表示一个\,就像\n表示回车一样。所以C++中的路径名:D:\matcom45\doc\users\_themes\m.dat应为:CString filename=_T("D:\\matcom45\\doc\\users\\_themes\\m.dat");或CString filename=_T("D:/matcom45/doc/users/_themes/m.dat");"./ " 加不加都一样,就是指当前目录"../ " 表示当前目录的上级目录,即当前的父目录正斜杠,又称左斜杠,符号是"/";反斜杠,也称右斜杠,符号是"\"。 在Unix/Linux 阅读全文
QT父子窗口事件传递与事件过滤器
2010-12-17 15:54 by bingcaihuang, 19250 阅读, 5 推荐, 收藏,
摘要:处理监控系统的时候遇到问题,在MainWidget中创建多个子Widget的时候,原意是想鼠标点击先让MainWidget截获处理后再分派给子Widget去处理,但调试后发现如果子Widget重新实现了事件方法,就直接处理掉事件了,没有进到MainWidget的处理方法中去,如果子Widget没有accept或ignore该事件,则该事件就会被传递给其父亲,在子Widget存在accept或ignore事件的时候,想要经过一下MainWidget的处理方法,就得用到事件处理器,因此网上找了一下,发现QT的事件处理器可以处理。 QT将事件封装为QEvent实例以后,会呼叫QObject的eve 阅读全文
浙公网安备 33010602011771号