改变窗口颜色:重载对话框的WM_CTLCOLOR消息处理函数
HBRUSH CJGameDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
m_hbrDlg = CreateSolidBrush(RGB(255,200,200));
pDC->SetBkColor(RGB(255,200,200));
pDC->SetTextColor(RGB(6,125,200));
return m_hbrDlg;
}
全屏:
1。去掉标题栏:
ModifyStyle(WS_CAPTION,0,0);
2。最大化:
SendMessage(WM_SYSCOMMAND,SC_MAXIMIZE,0);
总位于屏幕最前方:
每当窗口失去焦点的时候,就把它弄到前面来,就是别人不能切换到别的程序:重载对话框的WM_KILLFOCUS的处理函数
void CJGameDlg::OnKillFocus(CWnd* pNewWnd) 
{
  //强行把窗口拉到最前端。
  HWND hForegdWnd = ::GetForegroundWindow();
  DWORD dwCurID = ::GetCurrentThreadId();
  DWORD dwForeID = ::GetWindowThreadProcessId(hForegdWnd, NULL);
  ::AttachThreadInput(dwCurID, dwForeID, TRUE);
  ::SetForegroundWindow(m_hWnd);
  ::AttachThreadInput(dwCurID, dwForeID, FALSE);


}

解决方案 »

  1.   

    第一个同上
    2,&3.
    int cx=GetSystemMestrics(SM_CXSCREEN);
    int cy=GetSystemMestrics(SM_CYSCREEN);
    SetWindowPos(pTopMost,0,0,cx,cy,NULL); //第一个参数为vc定义的,实现最顶上窗口如果还要包括任务栏的全屏,则还要计算一些东西
      

  2.   

    2,&3.
    int cx=GetSystemMetrics(SM_CXSCREEN);
    int cy=GetSystemMetrics(SM_CYSCREEN);
    SetWindowPos(pTopMost,0,0,cx,cy,NULL); //第一个参数为vc定义的,实现最顶上窗口如果还要包括任务栏的全屏,则还要计算一些东西