是这样的:
我的程序里面有好过个窗体,最下面是主窗体,主窗体的上面会有好过个放置图片或是视频的窗体,
最后我需要在所有窗体的最上面一层放上一个不受下面所有窗体影响的窗体,它的上面会有时钟和一个LOGO图.我的想法是在最上层弄一个透明窗体(其实就是用NULL_BRUSH刷一遍),可再在上面打印点什么东西就打不出来了.
请问根本就是我的想法不能实现还是我的代码写错了?如能解决,不够可以加分.附代码:
    HWND hwnd = CreateWindow(
  AfxRegisterWndClass(0),
  "eee",
  WS_CHILD|WS_VISIBLE|WS_POPUP,
  0,
  0,
  100,
  100,
  m_hMainWnd,NULL,NULL,NULL); 
    BringWindowToTop(hwnd);
    SetWindowText(hwnd,"test");

解决方案 »

  1.   

    明白一些了,请问"可以通过创建窗口区域来实现。 有内容的部分保留,只透明需要的部分"
    如何创建窗口区域?SetWindowRgn吗?不好意思我弄MFC的时间不长..
      

  2.   

    SetWindowRgn 通过设置窗口的区域,可以把不需要的那部分窗口区域切除,而不是透明。
      

  3.   

    SetWindowRgn的例子http://www.supercss.com/code/6946.htm
      

  4.   

    真正的透明窗体可以用 SetLayeredWindowAttributes 这个函数来做,不要用NULL_BRUSH
      

  5.   

    SetLayeredWindowAttributes 
    这个我正在尝试中.....
    那请问NULL_BRUSH和用SetLayeredWindowAttributes 有什么区别?
      

  6.   

    SetWindowRgn可以画出一个区域,然后可以设置这个区域是否透明等等..
    可这只能画出整个文字区域是不透明的,然后文字与文字之间的缝隙怎么办呢?