首页| 论坛| 消息

标题:【转帖】Qt&Kdevelop技巧
作者:XChinux
日期:2005-06-30 18:49
内容:

日期:2004年1月21日 星期三 天气:晴朗 作者:在黑暗中举起探索的火炬
Qt&Kdevelop技巧集(原创)
发表:2004-1-21 13:39:23 出处:你的博客网(yourblog.org)
1. 如何在Qt程序中加入OpenGL支持。
在QT程序中加入OpenGL支持很简单,只需要在Kdevelop连接的库中加入“-lGL -lGLU”即可,如果需要glut支持,还可以加入“-lglut”。具体操作是在kdevelop集成编译环境中按下”F7”,在弹出的对话框中选择 “Linker”一项,在输入栏输入你想添加的库即可,写法与gcc/g++一致。
一般在类QGLWidget中使用OpenGL,调用此类的头文件是qgl.h,具体写法请参考qt例程中的gear,texture,box等程序(在RedHat7.2中,它们在/usr/lib/qt-2.3.1/doc/examples下).
2. 检验linux/Unix环境是否支持OpenGL.
Qt中的QGLFormat类可以帮助我们轻易检验系统是否支持OpenGL,载入头文件(#include )后,我们就可以使用QGLFormat的静态函数hasOpenGL来检验,具体写法如下例:
if (!QGLFormat::hasOpenGL()) //Test OpenGL Environment
{
qWarning( "This system has no OpenGL support. Exiting." );//弹出警告对话框
return -1;
}
3.获得屏幕的高和宽.
一般我们可以通过QT的Qapplication类来获得系统的一些信息,载入头文件(#include )我们就可以调用它,下例是使主程序充满整个屏幕的代码:
Gui_MainForm gui_mainform;
a.setMainWidget( &gui_mainform );
gui_mainform.resize( QApplication::desktop()->width(), QApplication::desktop()->height() );gui_mainform.show();
4.关于信号和槽.
信号和槽机制是QT库的重要特性,可以说不了解它就不了解Qt.此机制能在各类间建立方便快捷的通信联系,只要类中加载了Q_OBJECT宏并用 connect函数正确连接在一起即可,具体写法这里就不赘述了.但本人在使用过程中发现使用此机制容易破坏程序的结构性和封装性,速度也不是很让人满意,尤其是在跨多类调用时.鄙人的一孔之见是: 信号和槽机制不可不用,但不可多用.
5.QT程序中界面的设计.
尽管Kdevelop是一个优秀的集成编译环境,可遗憾的是它不是一个可视化的编译环境,好在有Qdesigner来帮助我们完成界面设计,该程序的使用很简单,使用过VB,VC和Delphi的程序员能很快其操作方式,操作完成后存盘会生成一个扩展名为”ui”的文件,你接下来的任务就是把它解析成 cpp和h文件,假设文件名为myform.ui,解析方法如下:
$uic myform.u ..


#1 [dmg_123 03-01 13:58]
好东东~!
顶楼主一下~呵呵 ~!

回复 发表
主题 版块