你的位置:主页 > sunbet体育 >

子窗口的应用——翻转窗口

2020-04-04 | 人围观

  本文由BlueCoder编写?转载请说明出处:

  http://blog.csdn.net/crocodile__/article/details/9902475

  我的邮箱:bluecoder@yeah.net? 欢迎大年夜家和我交换编程心得

  我的微博:BlueCoder_黎小华? 欢迎莅临^_^

  在windows依次中,子窗口的应用很罕见,基本上大年夜局部窗口都有其指定的子窗口,这些子窗口统统受其父窗口的办理,各自完成响应的功用

  ?

  惯例子,先简述明天的实例依次所完成的功用:

  在父窗口中先绘制一张位图,然后在其之上创立36个子窗口,点击子窗口隐蔽,点击改子窗口占据父窗口的区域就从新显示该子窗口。

  ?

  比拟好玩儿,可以拼出很多美不美观的图形,来看看后果吧:

  

  ?

  

  ?

  

  ?

  

  ?

  OK,赏析完了,就来具体研究一下它的完成细节……

  ?

  在看代码细节之前,先来进修一个函数:

  这个函数可用于移动一个窗口,同时修改窗口的size(大年夜小),在创立子窗口中能用到

  ?

  浏览代码细节:

  (1)父窗口和子窗口类的注册

  ?

  (2)因为这里的子窗口都是做异样一件事——照顾鼠标左键音讯,隐蔽自己,因此我们只需求一个回调函数

  你能够会有一个疑虑:

  依次如何知道我们点击的是哪个子窗口呢?

  问得好。不外你能够遗忘了一点,windows是若何办理、定位在它下面运转的一切依次(窗口)呢?

  这里子窗口的定位和其它窗口(包罗父窗口)都是由windows来一致肯定,无需我们的父窗口来操心

  ?

  (3)在父窗口的WM_CREATE音讯中获得位图信息和创立子窗口

  a)在WM_PAINT音讯中贴位图,这个我就不再赘述了,不熟悉的冤家可以检查我之前写的关于Bitmap位图应用的博文

  b)创立子窗口

  用一个for轮回

  因为在CREATE音讯中我们还不能肯定父窗口客户区大年夜小,所以还需求在WM_SIZE音讯中移动一下创立的子窗口

  (4)在父窗口的左键按下音讯中显示子窗口

  ?

  (5)子窗口的回调函数

  ?

  ?

  以上就是明天的内容,欢迎各位的品读^_^……

  ?

  点击下载源代码和相干资本

标签:
Top