gpt4 book ai didi

java - 在 Java 中保留屏幕边缘

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:23:17 25 4
gpt4 key购买 nike

如何创建一个窗口(例如java.awt.Framejavax.swing.JFramejava.awt.Dialogjavax.swing.JDialog 等)保留屏幕边缘,像停靠栏、任务栏、Trillian 或 Microsoft OneNote 都可以吗?我的目标是尽可能只使用标准 JDK 库。

最佳答案

此行为是 Windows 操作系统特有的,因此无法在标准 JDK 或 AWT/Swing 中执行此操作,因为它们需要在许多不同的操作系统中一致地工作。

最接近您想要的是获取当前屏幕的边界并移动/调整窗口大小以适应一侧齐平,尽管这现在会对桌面或其他窗口产生任何影响。

您可能最接近您想要的东西是使用 JNIWrapper and WinPack改变 native 窗口行为。不过,他们的文档并未显示有关桌面工具栏的任何内容。您可能必须使用他们的 JNI 直接访问特定的 COM 函数,然后了解如何在 C++ 中执行此操作,但如果您不了解 C++,那可能超出了您的项目范围。

附录:

如果您想使用特定操作系统和桌面管理器的 native 功能,您需要连接一个 native C++ 库以连接到 Gnome、KDE、Mac OS 等。搜索对于“Java JNI”和您想要与之集成的窗口系统,以找到您可以使用的包。例如,对于 Gnome,请参阅 here .

如果你想支持多个操作系统,请确保你创建了一个通用接口(interface),这样你就可以根据哪个 JNI 在运行时可用来实现与相应 JNI 的连接,并在它们都不可用时允许回退。

附言。如果你想在你的应用程序中弹出通知,Mac OS 和各种 Linux 版本支持 Growl,这样可以节省你一些时间。

关于java - 在 Java 中保留屏幕边缘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4660102/

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