BCB实现MDI程序背景图.docVIP

  • 5
  • 0
  • 约3.65千字
  • 约 3页
  • 2017-07-12 发布于河南
  • 举报
BCB实现MDI程序背景图

BCB实现MDI程序背景图. 在开发软件时,总希望软件界面越漂亮越好,我们在C++ Builder的SDI程序中比较容易实现漂亮的软件界面,但在MDI程序中,由于Windows的MDI软件的开发隐藏了许多技术细节,用SDI程序的方法,就不能实现了。下面笔者将详细讲述如何实现MDI程序背景图。 在MDI程序中是由两个窗口构成的,一个MDI主窗口和一个客户窗口。客户窗口覆盖了主窗口的客户区,并提供大量的MDI支持。在C++ Builder的MDI 的主窗口中提供了一个ClientHandle的客户窗口句柄,我们就是利用这个句柄来实现位图的显示。我们知道,在Windows的窗口中绘置位图,为使位图能够不断地刷新,必须响应WM_PAINT和WM_ERASEBKGND消息。我们可以利用钩子函数(钩子是Windows系统中一种特殊的消息处理机制,可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处理)。截住Windows系统发送给MDI客户窗口的WM_PAINT和WM_ERASEBKGND消息,从而实现客户窗口的刷新和重绘。我们可以在系统中安装自定义的消息钩子,对发往客户窗口的消息进行过滤,只处理WM_PAINT和WM_ERASEBKGND,以实现我们的目标。 编写钩子函数 编写Windows钩子函数分为三步:定义钩子、安装钩子和卸载钩子。 定义钩子函数 钩子函数是一种特殊的回调

文档评论(0)

1亿VIP精品文档

相关文档