现在很多软件,都是把一张图片当作整个窗口的背景。包括标题栏,菜单栏等,都是那个背景(如下图)。这个是怎么做到?还有,我自绘窗口的时候,画上一张图,就把所有的控件都覆盖了。在非客户区,标题栏上的最大化最小化关闭也覆盖了,菜单栏也覆盖了。在客户区绘图,就把按钮什么的都覆盖了。这个怎么处理?我用整张图CreatePatternBrush当画刷,放到WNDCLASS里,这回是设成背景了,结果图的大小不能变化,铺地板砖似的铺上了,这不是我要的结果!而且这种设背景的方法,当窗口已经生成,我就不知道再肿么换背景...

解决方案 »

  1.   

    在 WM_PAINT 中画背景,StretchBlt 函数 可以实现图片拉伸。
      

  2.   

    这个应该是个对话框,把什么system menu,title bar都去掉,剩下的想怎么弄就怎么弄,onpaint或者onerasebkgnd贴图就是全屏的了。
      

  3.   

    响应WM_ERASEBAKGND消息 就可以了!
      

  4.   

    现在很多软件都不用 对话框自带的标题栏,重绘起来太麻烦。而且拖动功能也很好实现。
    这个界面 整个对话框背景 是一张图片,上部一排button图片,下部一个半透明图片。
    提醒楼主,用普通的SDK贴图无法实现这种绚丽的效果,特别是半透明。用GDI+ 或者CImage 可以
      

  5.   

    说白了,最好就是个光板Dialog,然后什么标题、边框、状态栏等等完全自绘。