首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WS_EX_LAYERED窗口不会相对于其父窗口移动。

WS_EX_LAYERED窗口不会相对于其父窗口移动。
EN

Stack Overflow用户
提问于 2012-05-11 12:50:26
回答 1查看 1.1K关注 0票数 0

我创建了一个具有WS_EX_LAYERED扩展样式的窗口。在此之后,我将此窗口的父窗口更改为SetParent。但是,当我移动桌面上的父窗口时,我的窗口并没有改变它相对于父窗口的位置。

代码语言:javascript
复制
int translevel = 50;  /* 0 - 255 */
      SetWindowLong(m_hWnd,GWL_EXSTYLE,GetWindowLong(m_hWnd,GWL_EXSTYLE)|WS_EX_LAYERED );
      ::SetLayeredWindowAttributes(m_hWnd,RGB(0,0,0),translevel, 0x02);

      HWND hParent  = ::FindWindow(TEXT("TSSHELLWND"), NULL);

      ::SetParent(m_hWnd, hParent);

注意:- TSSHELLWND是mstsc会话窗口。我想把我的窗口作为mstsc会话窗口的一个子类。

是不是因为我在子窗口上应用了LAYESRED属性?

EN

回答 1

Stack Overflow用户

发布于 2012-05-11 14:52:04

您不能在前windows 8系统的子窗口上使用WS_EX_LAYERED文件上也写着

windows 8:顶层窗口和子窗口支持WS_EX_LAYERED样式。以前的windows版本只支持顶层窗口的WS_EX_LAYERED。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10551692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档