如何修改窗口的属性,让它”永远”不会被其他窗口覆盖.
--我在对话框中加了一个数据库网格控件和一个图片控件(用来做背景),但程序运行之后,“网格控件”被“图片控件”覆盖了.
请教格各位有什么方法可以解决该问题??谢谢

解决方案 »

  1.   

    SetWindowPos(...) //参见msdn
    //HWND_TOPMOST 
    Places the window above all non-topmost windows. The window maintains its topmost position even when it is deactivated.
      

  2.   

    SetWindowPos(HWND_TOPMOST,...);
    请问在“...”处,是不是添加“要修改属性的窗口”的指针!
      

  3.   

    你自己去MSDN里去查一下这个函数就行啦
      

  4.   

    这种情况下,用picture控件做背景是不行的,正确的应该在响应WM_PAINT,在OnPaint()中画:
    void CYourDlg::OnPaint()
    {
        CPaintDC dc(this);
        CBitmap bmp;
        bmp.LoadBitmap(ID_YOURBMP);
        BITMAP bm;
        bmp.GetBitmpa(&bm);    CDC dcMem;
        dcMem.CreateCompatibleDC(&dc);
        CBitmap *pOldBmp = dcMem.SelectObject(&bmp);
        dc.BitBlt(0, 0, bm.bmWidth, bm.bmHeight, &dcMem, 0, 0, SRCCOPY);
        dcMem.SelectObject(pOldBmp);
        bmp.DeleteObject();
    }
    其中,ID_YOURBMP是bitmap的resource ID。
      

  5.   

    改变tab顺序就可以使数据库网格控件在图片控件(用来做背景)之上。