在网上看了一些例子,讲的是画一个位图。
画位图时一定要把位图选到一个DC中,然后另一个DC用BitBlt把另一个DC中的位图拷过来。
但我的程序中有很多的位图文件,比如有三个位图文件,要显示到客户区的不同位置。应该如何办?
是要创建三个DC吗,把三个位图分别选到三个DC中,然后另一个主DC把三个DC中的位图BITBLT过来?
或者是一个DC,三个位图。分别先后把这三个位图先后选入DC中,然后分别BITBLT到主DC中?要想实现双缓冲的话,是不是得到屏幕DC,创建内存DC。如果想把3个位图分别显示到DC的不同位置。是不是还要创建DC把这三个位图选进去?

解决方案 »

  1.   

    一个DC还是三个DC都可以,关键的是往界面DC(即你说的主DC)中BitBlt时注意图像的各自坐标就行了。
      

  2.   

    你所说的第一个DC其实就是内存DC,无论是多少个位图显示,使用一个内存DC就可以了。每次需要显示位图的时候,就将其选入内存DC中,再拷贝到设备DC(即你说的另一个DC)显示。当然要注意,必须在前一幅图显示操作完成之后才能够将第二副图选入内存DC中。