【技术实现步骤摘要】
本专利技术涉及一种界面制作相关技术,尤其是涉及。
技术介绍
WPF是基于DirectX技术的图形系统,利用硬件加速及图形向量渲染,从呈现效果及性能上大大改善了传统2D图形窗口用户体验,其完善的Ui架构能快速帮助程序开发出媲美Mac的酷炫界面。在WPF中,传统的窗口概念已发生了改变,窗口也是其渲染系统中一个普通的可视元素,并且与其它所有界面元素统一渲染,用户无法直接在这窗口区域绘制自己图形(因为一个区域只能用一种方式来渲染)。三维引擎或者其它的很多传统的应用程序,都是基于GDI的窗口句柄,截获其重绘消息,将自定义的渲染结果呈现在窗口上,并通过GDI的消息机制获取用户的输入,其中⑶I (Graphics Device Interface)为图形设备接口,其为Windows的子系统,负责在视讯显示器和打印机上显示图形。随着计算机硬件快速发展,用户对软件的体验要求越来越高,GDI窗口及相关的技术在开发用户图形界面上已渐渐显得力不从心。利用WPF提供HWNDH0ST技术,可以将⑶I窗口嵌入到wpf中应用程序中,在⑶I窗口区域实现自定义渲染,而在非GDI区域实现各种用好的图形界面。当前实现WPF窗体的方法有多种,不管是使用D3DImage还是使用HWNDH0ST技术,都普遍存在两者交互性差如,窗口大小变化时出现闪烁,应用程序无法接收鼠标键盘一些特殊输入消息等问题。
技术实现思路
本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种适用范围广、扩展性好、操作方便的基于Managed C实现WPF窗体与⑶I窗体消息互操作的方法。本专利技术的目的可以通过以下技术方案来 ...
【技术保护点】
一种基于Managed?C实现WPF窗体与GDI窗体消息互操作的方法,其特征在于,包括:采用Managed?c++创建一个GDI窗口,并提供相应的API,同时生成一个DLL;在WPF应用程序中定义一个派生自HwndHost的窗口类,在该窗口类将DLL提供的GDI作为其子窗口,并以委托方式实现GDI窗口中需要处理的消息。
【技术特征摘要】
1.一种基于Managed C实现WPF窗体与⑶I窗体消息互操作的方法,其特征在于,包括 采用Managed c++创建一个⑶I窗口,并提供相应的API,同时生成一个DLL ;在WPF应用程序中定义一个派生自HwndHost的窗口类,在该窗口类将DLL提供的GDI作为其子窗口,并以委托方式实现⑶I窗口中需要处理的消息。2.根据权利要求1所述的一种基于ManagedC实现WPF窗体与GDI窗体消息互操作的方法,其特征在于,具体过程如下 a)采用c#定义一个派生自HwndHost的窗口类; b)采用Managedc++注册一个⑶I窗口,实现将· net程序传过来的委托函数转化为c++可处理的函数指针; c)判断是否注册成功,若为是,创建一个GDI窗口,并返回该窗口的句柄,执行步骤d),否则,返回步骤b); d)将⑶I窗口作为HwndHost类的子...
【专利技术属性】
技术研发人员:郑婉清,林秀全,张生言,
申请(专利权)人:上海创图网络科技发展有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。