你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 专家论坛
SCO Unix平台OUCL开发研究(五)
 

应用程序必须从标准的Object Unix/Linux Class LibraryTapplication(或者Tapplication派生的某个类)派生出新的类。这个新类至少应该重定义一个虚拟成员函数InitMainWindowInitMainWindowObject Unix/Linux Class Library应用程序初始化期间构造一个主窗口对象。示例如下:

class TLfrApplication : public TApplication {

public:

    TlfrApplication(char *AppName)();

    Virtual void InitMainWindows(void);

};

这个主窗口对象存放在应用程序对象的MainWindow数据成员之中。应用程序对象拥有主窗口对象,但两者在层次上并不相关。这种拥属关系被称为事件链(instance linkage)。TlfrApp::InitMainWindow的定义如下所列:

void TlfrApp::InitMainWindow(void)

{

    MainWindow=new TWindow("Sample Object Unix Class Program",

                          1,0,78,25,WHITE_BLUE,BLUE_BLUE);

}

TlfrApp的主窗口对象是作为TWindow的一个事例而构造的(如上所似)。其中第一个参数是窗口的标题,它是应用程序主窗口对象的Caption的数据成员,已被置为“Sample Object Unix Class Program”。这样,主窗口对象将作为Object Unix/Linux Class Library的派生类的一个事例。

下面给出一个完整的示例:

#include “owl.hpp”

class TLfrApplication : public TApplication {

public:

    TlfrApplication(char *AppName)();

    Virtual void InitMainWindows(void);

};

int main(void)

{

    InitScreen();//初始化curses

    TlfrApp LfrApp(“Sample Object Unix Class Program”);

    LfrApp.Run();

    FreeScreen();//释放分配的curses库空间

    Return 0;

}

(3)TWindow

窗口对象代表交互式环境的主窗口,当然,也可以定义一个相应的子窗口。所有应用程序的主窗口类必须从它派生,并又TApplication类的初始化主窗口函数InitMainWindow实例化它。

Object Unix/Linux Class Library应用程序至少应该有一个主窗口。在应用程序启动之时,主窗口被显示出来。Object Unix/Linux Class Library程序的主窗口通常是一个TWindow派生类的事例。实际上,在本系统的定义中TWindow类就是作为主窗口类使用的,当然,可以做为其他子窗口使用,但,对于子窗口,一般采用对话框方式来替代子窗口。
  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089