繁体   English   中英

Java窗口无法在没有任务栏的情况下使用Substance LAF在屏幕上正确最大化

Java window not maximising properly on screen with no taskbar using Substance LAF

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我刚刚注意到,当我在第二个屏幕上最大化一个框架时-该框架没有任务栏-然后它的最终边界大约是如果任务栏在那的话。

我刚刚注意到它已切换到Windows7。以前在Vista中,我有一个实用程序可将任务栏添加到两个屏幕上,因此,如果不是这样的话,那里也可能是一个问题。 我敢肯定,在Linux中,我已经尝试过几个窗口管理器,这并不是问题。

如果我使用默认的LAF运行程序,则会表现出正确的行为(使用屏幕的整个水平空间)。 我认为StackOverflow并不是提交物质缺陷报告的最佳场所,但是如果有人可以提出补救措施,或者确认它确实是缺陷并有助于确定其发生的情况,将不胜感激。

编辑:我刚刚在源代码中进行了一些挖掘,发现了一些对发行213的引用; 恰好是我现在遇到的缺陷,该缺陷在当时(早在2007年)已得到修复,并据报道可以在XP和Vista的现代版本中正常工作(4.1)。 我可能会在某些时候尝试调试相关的代码位。 看起来相当可管理。

/风滚草

1 个回复

我要说的是,如果仅在Substance LaF中发生,那肯定听起来像是应该报告的错误……但我只是在发布之前看到了您的修改。 劝说他们在4年后修复它,祝您好运!

同时,您可以尝试的唯一真正的解决方法是获取当前显示的图像并以此方式设置大小。 以下是一些代码,可以确定分辨率,界限以及每个监视器上可用的可用空间:

 public static void main(String... args) throws Exception {
        GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
        GraphicsDevice[] gds = ge.getScreenDevices();
        for (GraphicsDevice gd : gds) {
            GraphicsConfiguration gc = gd.getDefaultConfiguration();
            System.out.println("Bounds = " + gc.getBounds());
            System.out.println("Insets = " + Toolkit.getDefaultToolkit().getScreenInsets(gc));
        }
    }

在像我这样的双屏Windows安装程序上,这显示以下内容:

Bounds = java.awt.Rectangle[x=0,y=0,width=1280,height=1024] 
Insets = java.awt.Insets[top=0,left=0,bottom=30,right=0] 
Bounds = java.awt.Rectangle[x=1280,y=0,width=1280,height=1024] 
Insets = java.awt.Insets[top=0,left=0,bottom=0,right=0]

注意显示器1底部的30像素插图。

现在,您所需要做的就是弄清您的应用程序在哪个屏幕上运行。 如果您的应用程序窗口是JFrameWindow任何其他子类,则可以使用Window.getGraphicsConfiguration()来获取活动屏幕的图形配置。

我希望这会有所帮助(也许会帮助从事Substance Bug的人们!)

1 最大化的屏幕忽略任务栏

我有一个表格我设置为最大化 ,但由于某种原因,它忽略了任务栏并最大化到整个屏幕。 那是典型的吗? 有解决方法吗? 我正在运行带有双显示器设置的Windows XP(第一个/主窗口中的任务栏)。 ...

2 最大化窗口维护任务栏限制

我想创建一个没有Windows标题栏的Qt应用程序(我想创建一个自定义的应用程序)。 我创建了三个用于最小化,最大化和关闭窗口的按钮。 一切正常,但考虑到当我最大化窗口时,应用程序不考虑任务栏,最大化的窗口占据了整个屏幕,位于任务栏下方。 来自窗口的常规最大化命令会最大化应用程序窗口, ...

3 XNA窗口最大化,任务栏可见C#

我有这段代码,这使我的游戏窗口看起来最大化,而任务栏可见,这正是我所需要的。 问题是我的游戏正上方有一个1像素的小间隙,我试图通过使用form.Location(0,-1)抬起游戏窗口来form.Location(0,-1)它,但它根本不会移动窗口。 现在,如果我摆脱了.Current ...

2015-06-28 15:47:26 0 127   c#/ xna
4 不要在多屏幕最大化窗口上隐藏任务栏

我有一个应用程序WPF。 我的主要Windows为: 当我设置: 窗口全屏显示。 在我的辅助屏幕上可以,但在主屏幕上隐藏了任务栏。 我尝试使用SystemParameters.MaximizedPrimaryScreenHeight但在辅助设备上造成麻烦。 在WPF中,我 ...

2016-07-13 09:32:18 2 185   c#/ wpf
5 从任务栏最大化java进程

如果我在任务栏中最小化了一个进程,有没有办法从 java 中最大化它? 我知道这个过程的名称,但有可能吗? ...

2017-03-28 03:08:32 1 765   java/ jna
6 防止覆盖任务栏的最大化WPF窗口

我使用Microsoft.Windows.Shell DLL和.NET 4.0在WPF中创建了一个自定义窗口。 问题是如果任务栏设置为自动隐藏并且窗口最大化,则窗口完全覆盖任务栏。 我尝试了几种不同的解决方案(前几个谷歌搜索结果),但没有一个真正起作用。 如果任务栏未被自动隐藏, ...

7 WPF不是所有窗口都从任务栏最大化

我有三个窗户。 FirstWindow , SecondWindow和ThirdWindow 。 FirstWindow有一个按钮,单击此按钮可打开SecondWindow 。 类似地, SecondWindow具有按钮,单击此按钮可打开ThirdWindow 。 Owner的财产Sec ...

8 在多屏幕环境中最大化窗口而不隐藏/阻止任务栏

对于每个曾经问过自己“如何在不阻挡任务栏的情况下在多屏幕设置中最大化窗口”的人来说,这是一个帖子。 问题似乎是一个将MaximizeBox和MinimizeBox设置为false并且在多屏幕环境中以编程方式最大化的窗口覆盖了整个屏幕,而不仅仅是Screen.WorkingArea 。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM