给位大侠中午好,我现在在做一个视频播放器,现在遇到一个问题,当我全屏播放的时候,我想实现鼠标移动到屏幕的最下面是,跳出来一个播控对话框,上面有进度条,快进快退等等,但是现在我的播控对话框被播放器覆盖了,我想问一下有没有什么方法能使播控对话框始终显示在最顶层,无论什么时候。

解决方案 »

  1.   

    将对话框窗口置顶的具体代码如下:CRect rtClient;
    GetWindowRect(rtClient);  
    ::SetWindowPos(m_hWnd, HWND_TOPMOST, rtClient.left, rtClient.top, rtClient.Width(), rtClient.Height(), SWP_SHOWWINDOW); 
      

  2.   

    恩 setWindowPos()函数使用过了, 可是还是不见效,有没有什么别的方案了。好像播放器一全屏他就设置为topmost了,然后我设置播控对话框的属性为topmost,但是没有反应。
      

  3.   

    就像我们平常玩WC3的时候他是不是就是topmost,我们有没有什么办法使对话框在我们网游戏的时候也能显示在最上层的。
    暴风影音的下面那个播控有没有大侠知道是怎么实现的,我这个东西搞了一个多星期了,网上找了无数的代码和资料还是没有解决。
      

  4.   

    很可能是因为你的全屏的播放器本身也是置顶窗口,如果是这样的话,你在鼠标移动到屏幕的最下面的时候,将播放控制的对话框窗口,通过SetWindowPos设置为置顶窗口,然后调用 SetActiveWindow(),将其激活。
      

  5.   

    SetWindowPos(&wndTopMost, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);