gpt4 book ai didi

cocoa - 如何使两个 NSWindow 看起来具有相同的顺序?

转载 作者:行者123 更新时间:2023-12-03 17:56:46 26 4
gpt4 key购买 nike

我有两个 NSWindow,其中一个是另一个的子级。基本上我想要完成的是让 child 弹出并看起来延伸了 parent 。如果您愿意,可以将其想象为打开一本书:封面翻转并最终以与标题页相同的 Z 顺序结束。

但是我遇到一个问题,其中一个窗口总是在另一个窗口上转换阴影。有没有办法让它们在同一个 Z 上,这样既不会在另一个上转换阴影,但又会在它们下面的窗口上转换阴影?

最佳答案

这能行吗?获取现有的子窗口,并使用 setShadow:false 调用删除阴影。同时在两个现有窗口后面创建按 Z 顺序排列的第三个虚拟窗口。使该窗口始终与真正的子窗口具有相同的大小和形状,并保留阴影。

与此相关的两个可能的问题:(1) 在两个阴影相交的点处出现奇怪的“双阴影”。 (2)有焦点的窗口转换的阴影比没有焦点的窗口转换的阴影大得多。因此,如果焦点在两个窗口之间移动,阴影的大小可能会改变。不确定如何解决这个问题。

否则,您唯一的选择可能是将两个关闭阴影的窗口放在一个令人讨厌的容器窗口中,该窗口会转换一个阴影。这将是一个相当彻底的 UI 更改,但根据我的经验,修补应用程序“外边缘”的默认外观或尝试在不使用操作系统功能的情况下编写自己的部分透明度的应用程序很少能顺利运行。

关于cocoa - 如何使两个 NSWindow 看起来具有相同的顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12153100/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com