第 5 / 6 页123456


已阅读:6,643 次
OpenGL渲染实现的Editbox如何实现输入法输入
ian | OpenGL | 2011/10/20


前段时间闲着无事,于是做了一个采用OpenGL渲染的UI库的原型,做这个东东的初衷嘛,仅仅是想在UI上探索一下跨平台的可行性。以前发过一片文章,介绍如何在OpenGL中渲染中文字符的,不过那只是解决如何在OpenGL的环境下渲染字符而已,而没有对输入法输入的处理。 相信有很多人都知道CEGUI,以前学习OGRE这款3D引擎的时候,使用到CEGUI作为游戏的菜单界面,结果就遇到过CEGUI的Input控件无法获取输入法的中文输入的......
Read more

已阅读:4,285 次
OpenGL渲染绘制中文字符
ian | OpenGL | 2011/10/17


OpenGL的图像处理功能不可谓不强大,但是本身却不提供文字的显示和处理能力,所以我们只有借助于第三方的库来完成这个功能。这里介绍windows下如何在OpenGL里完成中文(当然也包括其他单字节字符了)的正常显示。 这里介绍windows的一个API函数:wglUseFontBitmapsW() ,函数的声明如下: WINGDIAPI BOOL WINAPI wglUseFontBitmapsW(HDC, DWORD, DWORD, DWORD); 网上很多人都说wglUseFontBitmaps()函数无法显示中文,其实我们只要用wglUseFontBitmapsW()就......
Read more

已阅读:2,177 次
界面程序开发的一些总结(三)
ian | 其他 | 2011/10/13


      然后最痛苦的时候来了,尽管已经了解并掌握了几乎所有必需的知识,对于一个任务,我们能从功能上比较完美的实现,但这个时候,我们已经站上一个高度,追求完美的品质告诉我们一定要把界面做得尽量美观,让人过目难忘或者心情舒适。但开发过程中我们发现这是一个很痛苦的过程,一切并不像想象中的那么简单,自己做出来的界面经常会让自己反胃!我写过小游戏,写过播放器,但自己几乎不会去......
Read more

已阅读:2,251 次
界面程序开发的一些总结(二)
ian | 其他 | 2011/10/12


经过在第一阶段的痛苦磨炼,我们总算是打下了比较坚固的基础,可以快速的开发各种常见的窗口程序,各种控件的应用比较熟练,也能利用消息机制完成各种需要的功能。但一个完整的窗口程序不仅仅是由一堆简单的控件堆砌而成,在很多场合下,控件的事件响应函数需要调用具体的、功能性的代码。打个比方,尽管你可以使用如CPicture这些MFC提供的控件为你的窗口添加一些图片,但老实说,你并不知道这个控件中......
Read more

已阅读:4,094 次
界面程序开发的一些总结(一)
ian | C/C++,其他 | 2011/10/11


一直纠结于究竟该用什么标题:总结其实说不上的,毕竟自己经验也不怎么丰富,充其量也就是一小结;换用感悟之类的也不大合适,这会让人以为我故作老成、经验丰富,诱骗大家,知根知底的朋友们当然很容易就揭穿我了。想来想去,虽然以后还有很长的路要走,但就暂且用“总结”来回顾一下自己做界面开发的一些经验和心得吧。 第一语言是C++,所以当初选择学习MFC似乎是理所当然的了。这是我最......
Read more

已阅读:4,105 次
OpenGL工程关闭控制台窗口
ian | OpenGL | 2011/10/10


有时候当我们的windows程序使用到OpenGL时,程序启动后总是会弹出一个控制台的窗口,这个cmd窗口在程序调试时用于打印日志倒是很方便,但是如果发布后还有这个窗口那就太影响体验了。 出现cmd窗口的原因是使用到了GLUT库,其实要让此窗口不出现的方法十分简单,只需要在代码中加入一行: #pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" ) ......
Read more

已阅读:7,346 次
关于AS3.0中Error #2032: 流错误的解决方案
ian | Flex/AS | 2011/05/05


今天写的一段as代码,从web服务器上加载一个3d模型文件,代码如下: _loaderAse = new URLLoader(); _loaderAse.dataFormat = URLLoaderDataFormat.TEXT; _loaderAse.addEventListener( Event.COMPLETE, parseAse ); var request:URLRequest = new URLRequest(filename); _loaderAse.load(request); 这段代码很简单,但是运行的时候总是报错,错误码如下: Error #2044: 未处理的 ioError: Error #2032: 流错误 ......
Read more

已阅读:2,312 次
关于new定位符的用法
ian | C/C++ | 2011/04/02


请先看一段代码: class Base { public:    Base():m_Id(0) {}    Base(int level)    {        Base();        m_Level = level;    } private:    int m_Id;    int m_Level; } ......
Read more

已阅读:5,431 次
如何正确使用QThread进行多线程编程
ian | QT | 2011/03/17


最开始接触到QThread这个类的时候,和很多人一样,采用了下面这样的使用方法: class MyThread : public QThread { Q_OBJECT public: explicit MyThread(QObject *parent = 0); protected: virtual void run() { //todo... } }; ......
Read more

已阅读:3,673 次
C++不定参数的实现
ian | C/C++ | 2011/03/12


说到不定参数,我们最先想到的就是C++里经常用到printf函数,这个函数可以接收不定数量的参数,函数原型如下: int printf ( const char *format, ... ); 这里第一个参数后的“...”表示该函数接收不定数量的参数。下面具体介绍C/C++可变参数表的使用方法,使我们的函数也能支持这种不定参数。 ......
Read more
第 5 / 6 页123456