一种数控系统中界面系统的创建方法

文档序号:6442378阅读:205来源:国知局

专利名称::一种数控系统中界面系统的创建方法
技术领域
:本发明涉及一种界面系统的创建方法,特别是涉及一种数控系统中的界面系统的创建方法。
背景技术
:目前,多数的数控系统界面是在windows下开发,在Linux操作系统下,要开发数控系统的界面系统的平台较少,而且存在着开发周期较长,效率较低,扩展性较差,另外还需要支付昂贵的版权费等问题。总体可以概括为以下几种问题:(I)用Linux操作系统开发界面系统的平台扩展性较差(多数情况下):有些界面系统开发平台中不支持自定义构件,需要额外绑定一些开发工具才能制作相应的构件,这样就增加了开发流程,加大了开发难度。(2)在Linux操作系统下大多数界面系统的开发平台开发周期较长,效率较低:界面系统开发是一项非常繁琐的工作,开发一个界面系统往往需要经过很多次调整才能达到需要设计的效果。但采用Linux操作系统时,进行每次调整都需要通过改代码来查看实现情况,其界面系统的设计和处理功能没有分开这就势必降低开发的效率。(3)在Linux操作系统下,一些好的界面系统开发平台大都为非开源的。在Linux系统下,多数界面系统开发平台不遵循LesserGeneralPublicLicense(LGPL)许可,如:SIEMENS数控系统的界面系统用的是QT平台开发,而要开发商业化的界面系统就需要向各平台公司支付极其昂贵的费用,同时也不利于代码的移植。现有技术中,中国专利申请号200810022449.2提供一种《一机多界面数控系统的实现方法及系统》,是一种利用一台主机可实现多种界面数控系统教学用的一机多界面数控系统的实现方法及系统。该实现方法不适合再为扩展开发界面系统所用。
发明内容本发明的目的是为了克服上述现有技术中,采用Linux操作系统所存在的开发界面系统的平台扩展性较差,开发周期较长,效率较低等缺陷,提供一种界面系统的扩展性较好,提高界面系统开发的效率,缩短开发周期的界面系统的创建方法。本发明为了达到上述的目的,提供一种数控系统中界面系统的创建方法,所采取的技术方案是:在glade平台上建立界面框架,采用table容器构件(为虚拟容器)做为界面框架的基本元素,建立适应不同分辨率的界面框架和界面层次关系;采用cairo函数库编写自定义构件添加到所建立的界面框架中;采用rc文件配置所述界面框架中各构件的属性;采用gtk+函数库编写相应的处理函数。本发明界面系统的创建方法具有显著的进步。如上述本发明的创建方法,因为本发明是在glade平台上建立界面框架,并采用虚拟table容器构件做为界面框架的基本元素,建立适应不同分辨率的界面框架和界面层次关系。因为可以根据在glade平台上建立界面框架的比例大小,首先用table容器构件填充整个界面外框,以此作为界面的底层table容器构件,并按最小比例单元,把底层table容器构件等分成若干等份单元格,得到底层table容器构件中一个等份单元格的像素大小值。之后再用table容器构件(这里指的构件均为table容器构件)分别来填充底层table容器构件中相应的等份单元格,从而得到所规划的各区域的大小值。最后在各区域中添加所需要的构件,即建成了界面层次关系。由此可以看出,本发明的方法可以按照所要求规划的各区域的大小值进行添加构件。所以,本发明的方法扩展性较强,能够适应不同分辨率的要求。而且,容易开发,开发效率较高,开发周期较短。如上述本发明的创建方法,因为本发明是采用caiiX)函数库编写自定义构件添加到所建立的界面框架中。因为利用cairo函数库能够直接编写绘制自定义构件添加到所建立的界面框架中。这就解决了现有技术中界面系统中开发平台不具有编辑自定义构件的功能,要编辑自定义构件需要额外绑定相应的语言开发包等,使得开发流程较复杂,难度较大的问题。如上述本发明的创建方法,因为本发明采用rc文件配置所述界面框架中各构件的属性。因此,在编写rc文件时,可以设置各个构件类型所要求的各项属性,包括:构件内部字体、颜色、激活时和非激活时的属性等内部及外观属性。这就解决了一般的Linux界面开发平台中,构件的外观属性都是写入代码中的,不能根据需求随时改变构件的外观属性,扩展性差的问题。如上述本发明的创建方法,因为本发明采用gtk+函数库编写相应的处理函数,比如编写回调函数,能够方便快捷地调换画面层次或调用构件类型。如上述本发明的创建方法,因为本发明所采用的glade平台、cairo函数库、rc文件以及gtk+函数库相互配合组成的方法建立了一个界面系统开发平台,提供了一种免费的界面开发系统。遵循了LGPL许可,避免了进行商业化开发时需要支付昂贵的版权费问题。图1是本发明界面系统的创建方法一实施例的流程图;图2是建立适应不同分辨率的框架及界面层次关系一实施例的子流程图;图3是编辑自定义构件一实施例的子流程图;图4是配置构件属性一实施例的子流程图;图5是编写处理函数一实施例的子流程图。具体实施例方式下面结合附图和实施例进一步说明本发明界面系统的创建方法。如图1所示,本发明创建界面系统的具体方法步骤是:第一步01,规划所要创建的界面系统,设定界面外框,规划各显示区域,设定各显示区域的比例关系,进入glade平台进行编辑;第二步02,在glade平台上建立适应不同分辨率的界面框架,采用table容器构件(为虚拟容器)填充所设定的整个界面外框,以此做为界面的底层table容器构件。并根据所设定的最小比例区域,把底层table容器构件等分成(若干个)等份单元格,得到底层table容器构件中等份单元格的像素值,再获取各显示区域的像素值;第三步03,建立界面层次关系后,判断上述所建立的构件中有无所需要的构件,如果没有所需要的构件,则进行第四步04;如果已有所需要的构件,则对于所在的table容器构件进行布局后进行第五步05(所述第一、二、三步01、02、03的具体方法步骤参见图2的子流程);第四步04,采用caiix)函数库编辑所需要的自定义构件,加载到上述所建立的界面框架中,再对于table容器构件进行布局后进行第五步05(具体方法步骤参见图3的子流程);第五步05,采用rc文件编写配置所述界面框架中各构件的属性,即采用rc文件编写配置文件,用以配置界面框架中各构件的属性,生成glade文件(具体方法步骤参见图4的子流程);第六步06,采用gtk+函数库编写相应的处理函数,用gtk+函数库编写相应的回调函数,以便从glade文件中引出相应的构件(具体方法步骤参见图5的子流程),至此建成界面系统。图2是建立适应不同分辨率的框架及界面层次关系一实施例的子流程。如图2所示,建立适应不同分辨率的框架及界面层次关系的具体方法步骤是:第一步11,首先规划总体界面系统,并在glade平台上按照规划设定界面外框。由于数控系统界面的分辨率不是统一的,有800*600的分辨率,也有1024*768的分辨率。在本实施例中,设定为800*600的分辨率(为界面像素大小值);第二步12,规划显示区域,并设定各显示区域之间的大小比例关系;第三步13,采用table容器构件填充整个界面外框,以此做为界面的底层table容器构件;第四步14,根据所述第二步12中设定的最小比例显示区域,把底层table容器构件等分成(若干个)等份单元格,得到底层table容器中一个等份单元格的像素值;第五步15,再用table容器构件分别填充底层table容器构件中相应的等份单元格,从而得到所规划的各区域的像素值;第六步16,在各显示区域中添加所需的构件(这里所指的构件均为table容器构件),设置底层各显示区域(table容器构件)需要显示的内容,并摆放相应的构件;第七步17,设置table容器构件相应的属性(如在本实施例中,所设置的属性包括:不激活、隐藏等),并判断有否下一层需要显示的内容,若有下一层需要显示的内容则进行下一步;若没有下一层需要显示的内容,则进行最后一步110,完成界面框架的不同分辨率和界面层次关系的设置;第八步18,将上述第六步16中table容器构件压缩到底层table容器构件中的一个等份单元格中;第九步19,根据第六步16再设置下一层各显示区域(table容器构件)要显示的内容,并摆放相应的构件,然后再进行第七步17操作完成后进到最后一步110;第十步110,完成界面框架的不同分辨率和界面层次关系的设置。图3是编辑自定义构件一实施例的子流程。如图3所示,编辑自定义构件的具体方法步骤是:第一步21,采用caiix)函数库,编写所需要的自定义构件,并保存为gtk+文件格式;第二步22,再通过gcc编译器将上述gtk+文件编译生成所需要的.so库文件;第三步23,将所述.so库文件拷贝到系统中glade库(glade平台上)目录下和系统的/usr/lib/目录下;第四步24,编写描述自定义构件的xml文本,并将其拷贝到glade库(glade平台上)的共享目录下;第五步25,最后重启glade平台,将自定义构件添加到已建立的界面框架中。图4是配置构件属性一实施例的子流程。如图4所示,配置构件属性的具体方法步骤是:第一步31,编写rc文件,设置各构件类型所要求的各项属性(如在本实施例中,所设置的构件属性包括:构件内部字体、颜色、激活时和非激活时的属性);第二步32,判断构件是否为透明类型,如果不是则进行第四步34;如果是则进行第三步33;第三步33,在透明构件中添加事件盒构件,并直接定义事件盒构件的构件类型属性;第四步34,在main函数中定义构件类型属性,即在main函数中去定义哪一种构件用什么构件类型属性;第五步35,最后在rc文件中连接main函数中的构件属性,生成glade文件。图5是编写处理函数一实施例的子流程。如图5所示,编写处理函数的具体方法步骤是:第一步41:加载上述已生成的glade文件;如在本实施例中执行://加载glade文件gtk_buiIder_add_from_file(builder,"xp.glade",NULL);第二步42:从glade文件中引出相应的构件;如在本实施例中执行://从glade中引出相应的构件window_main=GTK_WIDGET(gtk_builder_get_object(builder,"window_main"));第三步43:连接所需要的触发函数;如在本实施例中执行:Il连接所要触发的函数gtk_signal_connect(GTK_0BJECT(butl),"clicked",GTK_SIGNAL_FUNC(butl_do),NULL);第四步:采用gtk+函数库编写回调函数,用来调用相应的构件进行显示。编写回调函数用以方便地显示哪一层的画面,或者调用哪一种构件。如在本实施例中执行://回调函数voidbutl_do(){//处理相应事件}以此调换显示画面层次或调用构架类型。权利要求1.一种数控系统中界面系统的创建方法,其特征在于在glade平台上建立界面框架,采用table容器构件做为界面框架的基本元素,建立适应不同分辨率的界面框架和界面层次关系;采用cairo函数库编写自定义构件添加到所建立的界面框架中;采用rc文件编写配置所述界面框架中各构件的属性;采用gtk+函数库编写相应的处理函数。2.根据权利要求1所述的数控系统中界面系统的创建方法,其特征在于具体的方法步骤是:第一步,规划所要创建的界面系统,设定界面外框,规划各显示区域,设定各显示区域的比例关系,进入glade平台进行编辑;第二步,在glade平台上建立适应不同分辨率的界面框架,采用table容器构件填充所设定的整个界面外框,以此做为界面的底层table容器构件,并根据所设定的最小比例区域,把底层table容器构件等分成等份单元格,得到底层table容器构件中等份单元格的像素值,再获取各显示区域的像素值;第三步,建立界面层次关系后,判断上述所建立的构件中有无所需要的构件,如果没有所需要的构件,则进行第四步;如果已有所需要的构件,则对于所在的table容器构件进行布局后进行第五步;第四步,采用cairo函数库编辑所需要的自定义构件,加载到上述所建立的界面框架中,再对于table容器构件进行布局后进行第五步;第五步,采用rc文件编写配置文件,用以配置界面框架中各构件的属性,生成glade文件;第六步,采用gtk+函数库编写相应的处理函数,用gtk+函数库编写相应的回调函数,以便从glade文件中引出相应的构件,至此建成界面系统。3.根据权利要求1或2所述的数控系统中界面系统的创建方法,其特征在于所述建立适应不同分辨率的框架及界面层次关系的具体方法步骤是:第一步,首先规划总体界面系统,并在glade平台上按照规划设定界面外框;第二步,规划显示区域,并设定各显示区域之间的大小比例关系;第三步,采用table容器构件填充整个界面外框,以此做为界面的底层table容器构件;第四步,根据所述第二步中设定的最小比例显示区域,将底层table容器构件等分成等份单元格,得到底层table容器构件中一个等份单元格的像素值;第五步,再用table容器构件分别填充底层table容器构件中相应的等份单元格,从而得到所规划的各区域的像素值;第六步,在各显示区域中添加所需的构件,设置底层各显示区域需要显示的内容,并摆放相应的构件;第七步,设置table容器构件相应的属性,并判断有否下一层需要显示的内容,若有下一层需要显示的内容则进行下一步;若没有下一层需要显示的内容,则进行最后一步,完成界面框架的不同分辨率和界面层次关系的设置;第八步,将上述第六步中table容器构件压缩到底层table容器构件中的一个等份单元格中;第九步,根据第六步再设置下一层各显示区域需要显示的内容,并摆放相应的构件,然后再进行第七步操作完成后进到最后一步;第十步,完成界面框架的不同分辨率和界面层次关系的设置。4.根据权利要求1或2所述的数控系统中界面系统的创建方法,其特征在于所述编辑自定义构件的具体方法步骤是:第一步,采用cairo函数库,编写所需要的自定义构件,并保存为gtk+文件格式;第二步,再通过gcc编译器将上述gtk+文件编译生成所需要的.so库文件;第三步,将所述.SO库文件拷贝到系统中glade库目录下和系统的/usr/lib/目录下;第四步,编写描述自定义构件的xml文本,并将其拷贝到glade库的共享目录下;第五步,最后重启glade平台,将自定义构件添加到已建立的界面框架中。5.根据权利要求1或2所述的数控系统中界面系统的创建方法,其特征在于所述配置构件属性的具体方法步骤是:第一步,编写rc文件,设置各构件类型所要求的各项属性;第二步,判断构件是否为透明类型,如果不是则进行第四步;如果是则进行第三步;第三步,在透明构件中添加事件盒构件,并直接定义事件盒构件的构件类型属性;第四步,在main函数中定义构件类型属性;第五步,最后在rc文件中连接main函数中的构件属性,生成glade文件。6.根据权利要求1或2或5所述的数控系统中界面系统的创建方法,其特征在于所述编写处理函数的具体方法步骤是:第一步:加载上述已生成的glade文件;第二步:从glade文件中引出相应的构件;第三步:连接所需要的触发函数;第四步:采用gtk+函数库编写回调函数,以此调换显示画面层次或调用构架类型。全文摘要一种数控系统中界面系统的创建方法,在glade平台上建立界面框架,采用虚拟table容器构件做为界面框架的基本元素,建立适应不同分辨率的界面框架和界面层次关系;采用cairo函数库编写自定义构件添加到所建立的界面框架中;采用rc文件配置所述界面框架中各构件的属性;采用gtk+函数库编写相应的处理函数。能够将自定义构件添加到所建立的界面框架中,解决了界面开发的难度。扩展性较强,能够适应不同分辨率的要求。能够方便快捷地调换画面层次或调用构件类型。文档编号G06F9/44GK103176770SQ20111043114公开日2013年6月26日申请日期2011年12月21日优先权日2011年12月21日发明者奚攀,谢萍,苏利钢申请人:上海三一精机有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1