• 10111阅读
  • 3回复

【摘录】《KDE2/Qt编程金典》第二章:创建并显示一个窗口——2.2 一个关于KDE的简单例子:Hello KDE [复制链接]

上一主题 下一主题
离线XChinux
 

只看楼主 倒序阅读 楼主  发表于: 2005-08-27
《KDE2/Qt编程金典》第二章:创建并显示一个窗口——2.2 一个关于KDE的简单例子:Hello KDE

  下面的例子和前面的关于Qt的例子很相似,只不过它是基于KApplication对象编写的,而不是基于QApplication对象。因为QApplication是KApplication类的基础,所以两个程序没有根本上的不同,只是KDE增加了一些工具,例如风格和主题、使用KDE部件的能力、处理标准KDE配置、处理阶段管理信息、启动用户的网络浏览器和电子邮件客户端的能力等。

1      /* hellokde.cpp */
2      #include <kapp.h>
3      #include <qlabel.h>
4      #include <qstring.h>
5      
6      int main(int argc, char **argv)
7      {
8            KApplication app(argc, argv, "hellokde");
9            QLabel *label = new QLabel(NULL);
10            QString string("Hello, KDE");
11            label->setText(string);
12            label->setAlignment(Qt::AlignVCenter | Qt::AlignHCenter);
13            label->setGeometry(0, 0, 180, 75);
15            label->show();
16            app.setMainWidget(label);
17            return(app.exec());
18      }

  KApplication对象是在程序第2行包含的头文件kapp.h中定义的。kapp.h文件包含了qapplication.h文件,因此每个Qt程序可使用的工具同样在KDE程序中也可使用。在第3行和第4行包含的头文件含有QLabel类和QString类的定义。
  在第8行创建了KApplication对象,将命令行参数和用于应用程序的一个名字传递给了此对象。这个名字将被用于程序专用的任务,如定位图标、接收消息以及阅读配置信息等。
  因为这个例程中使用了KDE对象,所以必须要包含存有此对象定义的KDE库。有一些专用的KDE库,主要的两个是libkdecore和libkdeui。

INCL= -I$(QTDIR)/include -I$(KDEDIR)/include
CFLAGS= -O2 -fno-strength-reduce
LFLAGS= -L$(QTDIR)/lib -L$(KDEDIR)/lib -L/usr/X11R6/lib
LIBS= -lkdecore -lkdeui -lqt -lX11 -lXext -ldl
CC=g++

hellokde: hellokde.o
     $(CC) $(LFLAGS) -o hellokde hellokde.o $(LIBS)

hellokde.o: hellokde.cpp

clean:
     rm -f hellokde
     rm -f hellokde.o

.SUFFIXES: .cpp

.cpp.o:
     $(CC) -c $(CFLAGS) $(INCL) -o $@ $<

  LIBS定义表明包含了库libkdecore.a,这个库中包含了KDE的核心功能;也包含了库libkdeui.a,此库包含了所有的KDE部件。KDE内部通过动态调用ODBC驱动器实现ODBC,由此,还需要包含库libdl.a。KDE安装时把这些库放在默认的目录下,这样不需要对LFLAGS增加新的搜索路径。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线osthink

只看该作者 1楼 发表于: 2005-08-27
Re:【摘录】《KDE2/Qt编程金典》第二章:创建并显示一个窗口——2.2 一个关于KD
怎么搞的,在哪里编译啊,
离线XChinux

只看该作者 2楼 发表于: 2005-08-27
Re:【摘录】《KDE2/Qt编程金典》第二章:创建并显示一个窗口——2.2 一个关于KD
源代码和Makefile都给出来了,那当然是直接make就行了(KDE程序当然在LINUX下)
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线mathbox

只看该作者 3楼 发表于: 2006-10-14
顶下天呐
快速回复
限100 字节
 
上一个 下一个