gpt4 book ai didi

java - 剪切区域以在动画期间隐藏 JWindow

转载 作者:行者123 更新时间:2023-11-30 09:33:00 25 4
gpt4 key购买 nike

我正在开发一个 toast 处理程序来管理通过“toast”动画(向上滑动,站立一会儿然后向下滑动)带给用户的通知。 Toast 类扩展了 JWindow(只是为了测试,我可以使用具有更稳定版本的 JDialog)。

我的问题是创建一种裁剪区域以在动画开始时隐藏 toast (JWindow)。当前窗口在整个动画过程中是可见的,但是当执行 toast.setVisible(true); 时它应该完全隐藏,并在“向上滑动”阶段开始出现,在“站立”阶段并在“滑下”阶段再次开始消失。

我不知道如何设置裁剪区域,谁能帮帮我?

我希望这是可以理解的。如果您需要更多详细信息,请告诉我。

最佳答案

以此LowerRightFrame开始, 使用以下初始位置:

int x = (int) rect.getMaxX() - f.getWidth();
int y = (int) rect.getMaxY() - f.getInsets().top;

然后使用 javax.swing.Timer 定期增加 y 到全高:

int y = (int) rect.getMaxY() - f.getHeight();

在这种方法中,裁剪由主机平台强制执行。请注意,某些平台不会让可见窗口完全离开屏幕;如果没有可见的拖动条,窗口将无法访问。

关于java - 剪切区域以在动画期间隐藏 JWindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12379419/

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