gpt4 book ai didi

java - 自定义 Java 窗口标题栏菜单

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

我试图允许用户在 Java 中更改窗口的标题,而无需向窗口本身添加组件。我实际上是在用 JInternalFrame 尝试这个, 但对于 JFrame 的解决方案应该是相似的.我只是想在右键单击窗口标题栏时弹出的上下文菜单中添加一个额外的菜单项。例如,下面的设置标题:

enter image description here

这个例子是在 Windows XP 上,但也许有一种方法可以独立获得操作系统的窗口上下文菜单,类似于 SystemTray.getSystemTray() (但对于 应用程序中的单个窗口)。由此我可以提供我自己的 ActionListener弹出一个对话框供用户输入新标题。

这是一项比我猜测的要大得多的任务吗?有没有人有他们以前使用过的解决方案?

最佳答案

简短回答:我认为这并不容易。我不是 100% 确定这是否可能。

首先,JFrame和JInternalFrame其实是有很大区别的。 JFrame 是顶级组件,其标题栏等通常由操作系统提供。 JInternalFrame 的全部内容(包括标题栏)由 Swing LAF 提供。

对于 JInternalFrame,上下文菜单由 LAF 提供,而不是 JInternalFrame 本身。您必须对 UIComponent 进行一些操作才能更改上下文菜单。我认为您可能必须提供自定义 UI 组件才能执行此操作,这很丑陋并且通常会破坏不同的 LAF 或工作但充其量看起来很糟糕。参见 BasicInternalFrameTitlePane , createSystemMenu 方法。

关于java - 自定义 Java 窗口标题栏菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6414299/

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