当前位置: 首页 > 专利查询>陈昱专利>正文

云计算系统终端实现GTK图形界面与云端应用对接的方法技术方案

技术编号:15778398 阅读:122 留言:0更新日期:2017-07-08 18:16
本发明专利技术公开了一种云计算系统终端实现GTK图形界面与云端应用对接的方法,其步骤如下:从云端下载按键图片,并保存到本地filename指定的文件中,由函数GdkPixbuf*gdk_pixbuf_new_from_file(const char*filename,GError**error)从指定文件中获取按键图片;对按键图片进行缩放,使图片的大小适应屏幕的百分比;新建显示按键图片的图片控件,并将按键图片的信息传入GtkImage控件中;将存储按键图片信息的GtkImage控件添加到已与应用相对应的GtkButton控件中;使用g_signal_connect将相应的按键事件与点击事件函数相关联。本发明专利技术,通过GTK将图形界面和后台应用相连接,实现了图形界面对后台的操作,使得云计算机终端完全隔离了网页页面显示,呈现给用户的是一个完全的本地化的图形化操作界面,带来的是类似操作系统的新体验。不仅界面美观,操作也很方便。

【技术实现步骤摘要】
云计算系统终端实现GTK图形界面与云端应用对接的方法
本专利技术涉及MC嵌入式开发系统领域,具体涉及云计算系统终端实现GTK图形界面与云端应用对接的方法。
技术介绍
虚拟服务器因其独特的作用得到越来越多的重视,应用也越来越广泛,但是传统方式的虚拟化服务器在本地显示的是普通的桌面应用,实现的是云端应用的本地化按键操作,其应用列表上的应用图标都是以文字的形式显现,操作起来不方便,表现力也不够直观,用户使用了太久的普通桌面操作,希望有更新颖的服务器操作界面来带来不一样的视觉效果。
技术实现思路
本专利技术所要解决的是传统方式的虚拟化服务器在在实现云端应用时是以文字的形式存在,操作不方便,视觉效果不新颖的技术问题。为了解决上述技术问题,本专利技术所采用的技术方案是提供一种云计算系统终端实现GTK图形界面与云端应用对接的方法,该方法的实现包括以下步骤:步骤A10、首先从云端下载按键图片,并保存到本地filename指定的文件中,接着由函数GdkPixbuf*gdk_pixbuf_new_from_file(constchar*filename,GError**error)从指定文件中获取所有的按键图片,在程序中出现error时,都使用NULL;步骤A20、对按键图片进行缩放,使图片的大小适应屏幕的百分比;步骤A30、新建用于显示按键图片的图片控件,并将按键图片的信息传入GtkImage控件中;步骤A40、将存储有按键图片信息的GtkImage控件添加到已与应用相对应的GtkButton控件中;步骤A50、通过g_signal_connect将相应的按键事件与点击事件函数相关联。在上述技术方案中,步骤A20的详细步骤如下:在程序中使用函数GdkPixbuf*gdk_pixbuf_scale_simple(constGdkPixbuf*src,intdest_width,intdest_heighGdkInterpTypeinterp_type)来调整按键图片的大小,使按键图片的大小适应屏幕的百分比,根据屏幕大小计算出相应比例的按键图片大小,并将按键图片的长宽属性分别传入dest_width与dest_height,其中的interp_type设置为GDK_INTERP_BILINEAR。在上述技术方案中,步骤A30的详细步骤如下:通过函数GtkWidget*gtk_image_new(void);新建一个按钮图片控件,用于显示按钮图片,并通过voidgtk_image_set_from_pixbuf(GtkImage*image,GdkPixbuf*pixbuf)将GdkPixbuf中的按键图片信息传入GtkImage控件中,其中,GdkPixbuf只保留着按键图片信息,无法使用GdkPixbuf直接显示按键图片。在上述技术方案中,步骤A40的详细步骤如下:通过voidgtk_container_add(GtkContainer*container,GtkWidget*widget)将GtkImage控件添加到GtkButton控件中;Voidgtk_container_set_border_width(GtkContainer*container,guintborder_width)使用该函数将GtkButton控件与GtkImage控件间距设置为0;voidgtk_button_set_relief(GtkButton*button,GtkReliefStylenewstyle)将以上函数GtkButton控件的relief属性修改为GTK_RELIEF_NONE,使GtkButton控件显示为透明。本专利技术,通过GTK将图形界面和后台应用相连接,实现了图形界面对后台的操作,使得云计算机终端完全隔离了网页页面显示,呈现给用户的是一个完全的本地化的图形化操作界面,带来的是类似操作系统的新体验。不仅界面美观,操作也很方便。附图说明图1为本专利技术提供的云计算系统终端实现GTK图形界面与云端应用对接的方法的流程图。具体实施方式下面结合附图对本专利技术做出详细的说明。如图1所示,本专利技术提供了一种云计算系统终端实现GTK图形界面与云端应用对接的方法,通过GTK将图形界面和后台应用相连接,实现了图形界面对后台的操作,使得云计算机终端完全隔离了网页页面显示,呈现给用户的是一个完全的本地化图形界面的操作,带来的是类似操作系统的新体验。本专利技术提供的云计算系统终端实现GTK图形界面与云端应用对接的方法包括以下步骤:步骤A10、首先从云端下载按键图片,并保存到本地filename指定的文件中,接着由函数GdkPixbuf*gdk_pixbuf_new_from_file(constchar*filename,GError**error)从指定文件中获取所有的按键图片,在程序中出现error时,都使用NULL;步骤A20、对按键图片进行缩放,使图片的大小适应屏幕的百分比;步骤A30、新建用于显示按键图片的图片控件,并将按键图片的信息传入GtkImage控件中;步骤A40、将存储有按键图片信息的GtkImage控件添加到已与应用相对应的GtkButton控件中;步骤A50、通过g_signal_connect将相应的按键事件与点击事件函数相关联。本专利技术,结束了传统方式按键式应用的操作,呈现的是完完全全的图形界面的操作体验。本专利技术所使用的gtk+3.0和webkitgtk+3.0库,一些关键数据结构为gtk+3.0库与webkitgtk+3.0库中所有,同时定制了相应的专用数据结构,主要包括以下结构体:fixed_element和app_fixed_element。(1)fixed_element结构体:fixed_element结构体用于控制登陆界面的排版及相应功能的实现,其核心控件包括GtkFixed、GtkImage、GtkButton、GtkEntry。GtkFixed控件用于将控件固定于GtkWindow上某个准确位置。GtkImage控件用于将外部图片读取进入本程序。GtkButton控件用于实现按键效果。GtkEntry控件用于实现输入框效果。整个完整的fixed_element结构体如下:几个重要结构体成员介绍:help_image:用于存放帮助文档,帮助文档为一张张图片组合而成,通过翻页按键实现帮助文档的查阅。而帮助文档的页数更具HELP_IMAGE_NUM宏决定。user:为gtkEntry控件,用于向用户提供用户名输入栏;passwd:为gtkEntry控件,用于向用户提供密码输入栏;user_data:用于存放用户名;passwd_data:用于存放密码;network_button:用于提供一个网络设置按键;login_button:用于提供一个登陆按键;prev_page:用于提供一个上一页按键;next_page:用于提供一个下一页按键;server_button:用于提供一个服务器设置按键;shutdown_button:用于提供一个关机按键。(2)app_fixed_element结构体:app_fixed_element结构体用于向用户提供一个应用列表界面,其主要包括工具栏以及页面按钮和应用列表。而工具栏上包括显本文档来自技高网...
云计算系统终端实现GTK图形界面与云端应用对接的方法

【技术保护点】
云计算系统终端实现GTK图形界面与云端应用对接的方法,其特征在于,包括以下步骤:步骤A10、首先从云端下载按键图片,并保存到本地filename指定的文件中,接着由函GdkPixbuf*gdk_pixbuf_new_from_file(constchar*filename,GError**error)从指定文件中获取所有的按键图片,在程序中出现error时,都使用NULL;步骤A20、对按键图片进行缩放,使图片的大小适应屏幕的百分比;步骤A30、新建用于显示按键图片的图片控件,并将按键图片的信息传入GtkImage控件中;步骤A40、将存储有按键图片信息的GtkImage控件添加到已与应用相对应的GtkButton控件中;步骤A50、通过g_signal_connect将相应的按键事件与点击事件函数相关联;步骤A20的详细步骤如下:在程序中使用函数GdkPixbuf*gdk_pixbuf_scale_simple(const GdkPixbuf*src,intdest_width,int dest_heigh GdkInterpType interp_type)来调整按键图片的大小,使按键图片的大小适应屏幕的百分比,根据屏幕大小计算出相应比例的按键图片大小,并将按键图片的长宽属性分别传入dest_width与dest_height,其中的interp_type设置为GDK_INTERP_BILINEAR;步骤A30的详细步骤如下:通过函数GtkWidget*gtk_image_new(void);新建一个按钮图片控件,用于显示按钮图片,并通过void gtk_image_set_from_pixbuf(GtkImage*image,GdkPixbuf*pixbuf)将GdkPixbuf中的按键图片信息传入GtkImage控件中;步骤A40的详细步骤如下:通过void gtk_container_add(GtkContainer*container,GtkWidget*widget)将GtkImage控件添加到GtkButton控件中;Voidgtk_container_set_border_width(GtkContainer*container,guintborder_width)使用该函数将GtkButton控件与GtkImage控件间距设置为0;void gtk_button_set_relief(GtkButton*button,GtkReliefStyle newstyle)将以上函数GtkButton控件的relief属性修改为GTK_RELIEF_NONE,使GtkButton控件显示为透明;fixed_element结构体用于控制登陆界面的排版及相应功能的实现,其核心控件包括GtkFixed、GtkImage、GtkButton、GtkEntry;GtkFixed控件用于将控件固定于GtkWindow上某个准确位置;GtkImage控件用于将外部图片读取进入本程序;GtkButton控件用于实现按键效果;GtkEntry控件用于实现输入框效果;整个完整的fixed_element结构体如下:typedef struct fixed_element{GtkFixed*fixed;GtkImage*bg_image;GtkButton*network_button;GtkImage*network_image;GtkButton*login_button;GtkImage*login_image;GtkImage*prev_page;GtkImage*prev_page_image;GtkButton*server_button;GtkImage*server_image;GtkButton*shutdown_button;GtkImage*shutdown_image;GtkEntey*user;GtkEntry*passwd;Const gchar*user_data;Const gchar*passwd_data;GtkImage*help_image[HELP_IMAGE_NUM];}fixed_element;几个重要结构体成员介绍:help_image:用于存放帮助文档,帮助文档为一张张图片组合而成,通过翻页按键实现帮助文档的查阅,而帮助文档的页数更具HELP_IMAGE_NUM宏决定;user:为gtkEntry控件,用于向用户提供用户名输入栏;passwd:为gtkEntry控件,用于向用户提供密码输入栏;user_data:用于存放用户名;passwd_data:用于存放密码;network_button:用于提供一个网络设置按键;login_button:用于提供一个登陆按键;prev_page...

【技术特征摘要】
1.云计算系统终端实现GTK图形界面与云端应用对接的方法,其特征在于,包括以下步骤:步骤A10、首先从云端下载按键图片,并保存到本地filename指定的文件中,接着由函GdkPixbuf*gdk_pixbuf_new_from_file(constchar*filename,GError**error)从指定文件中获取所有的按键图片,在程序中出现error时,都使用NULL;步骤A20、对按键图片进行缩放,使图片的大小适应屏幕的百分比;步骤A30、新建用于显示按键图片的图片控件,并将按键图片的信息传入GtkImage控件中;步骤A40、将存储有按键图片信息的GtkImage控件添加到已与应用相对应的GtkButton控件中;步骤A50、通过g_signal_connect将相应的按键事件与点击事件函数相关联;步骤A20的详细步骤如下:在程序中使用函数GdkPixbuf*gdk_pixbuf_scale_simple(constGdkPixbuf*src,intdest_width,intdest_heighGdkInterpTypeinterp_type)来调整按键图片的大小,使按键图片的大小适应屏幕的百分比,根据屏幕大小计算出相应比例的按键图片大小,并将按键图片的长宽属性分别传入dest_width与dest_height,其中的interp_type设置为GDK_INTERP_BILINEAR;步骤A30的详细步骤如下:通过函数GtkWidget*gtk_image_new(void);新建一个按钮图片控件,用于显示按钮图片,并通过voidgtk_image_set_from_pixbuf(GtkImage*image,GdkPixbuf*pixbuf)将GdkPixbuf中的按键图片信息传入GtkImage控件中;步骤A40的详细步骤如下:通过voidgtk_container_add(GtkContainer*container,GtkWidget*widget)将GtkImage控件添加到GtkButton控件中;Voidgtk_container_set_border_width(GtkContainer*container,guintborder_width)使用该函数将GtkButton控件与GtkImage控件间距设置为0;voidgtk_button_set_relief(GtkButton*button,GtkReliefStylenewstyle)将以上函数GtkButton控件的relief属性修改为GTK_RELIEF_NONE,使GtkButton控件显示为透明;fixed_element结构体用于控制登陆界面的排版及相应功能的实现,其核心控件包括GtkFixed、GtkImage、GtkButton、GtkEntry;GtkFixed控件用于将控件固定于GtkWindow上某个准确位置;GtkImage控件用于将外部图片读取进入本程序;GtkButton控件用于实现按键效果;GtkEntry控件用于实现输入框效果;整个完整的fixed_element结构体如下:typedefstructfixed_element{GtkFixed*fixed;GtkImage*bg_image;GtkButton*network_button;GtkImage*network_imag...

【专利技术属性】
技术研发人员:陈昱
申请(专利权)人:陈昱
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1