问题标签 [jwindow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
2493 浏览

java - JWindow总是在顶部没有获得焦点事件

我有一个 jwindow(设置为始终在顶部),您可以单击它来获取弹出菜单。如果用户右键单击该窗口,它会显示弹出菜单,但是如果用户单击任何其他窗口(例如 firefox),则弹出菜单不会消失。

我试图通过在 jwindow 上添加 FocusListener 来修复它,我实现了 FocusListener 并覆盖

但那里的事件永远不会被调用。我还尝试了以下方法,

这个事件也不叫。

所有这些 jwindows 都是一个带有图片的 JLabel。

0 投票
1 回答
292 浏览

applet - JApplet 中的 JWindow

我想询问有关此问题的更多信息和建议。

我正在制作一个 JApplet,我想放一个闪屏。我使用了 JWindow。在 JWindow 中,我放置了一个 JLabel...只是一个简单的标签,以便知道该标签是否会出现在 JWindow 中。不幸的是,jlabel 没有出现。我将其作为一个简单的应用程序进行了尝试,并且可以正常工作。这是我的初始屏幕代码。`

尝试{
       javax.swing.JWindow 窗口 = 新 javax.swing.JWindow(); window.setBackground(Color.YELLOW);
       window.setLayout(new FlowLayout());
       window.add(new JLabel("twinwins"));
       窗口.setSize(200, 200);
       window.setVisible(true);
       线程.sleep(5000);
       window.dispose();
}
catch(异常错误){
       JOptionPane.showMessageDialog(null, err.toString());
}`

请帮忙。谢谢。

0 投票
2 回答
987 浏览

java - 小程序闪屏,JWIndow?

这是我的第三个 SO 问题。请再次帮助...我想在我的小程序上放置一个启动画面。为此,我使用了 JWindow 组件。我已经用它来为我的独立 java 应用程序创建启动画面,所以我认为它也可以在 applet 上工作。问题是,它不起作用。Jwindow 可以与小程序一起使用吗?有没有更好的方法来做到这一点?很多!

我在小程序的启动方法中实例化 LoadingScreen 对象?这是代码:

}

更新!问题解决了。在小程序启动方法中对静态 Thread.sleep 方法的调用有点停止加载资源(图像)。这就是它没有显示的原因。它是通过创建一个单独的计时器线程来进行实际计数来修复的......所以每个人都知道......:)

0 投票
3 回答
3443 浏览

java - 将 KeyListener 添加到 JWindow 没有得到任何关键事件

在 Java 中,我将 KeyListener 添加到 JWindow,但它没有获得任何关键事件。如果我使用相同的代码但扩展了 JFrame,那么一切正常。

任何人都知道如何通过使用 JWindow 来解决这个问题?

请注意,我使用的是 Linux,所以我不确定这是否与平台有关。

谢谢

0 投票
2 回答
554 浏览

java - 具有黑色不透明度的 JWindow

我想创建一个不仅具有不透明度的 JWindow,而且我想更改 Swing 中不透明度的默认颜色。

例如,如果我写:

这将完全符合我的要求,但有一个例外,颜色是白色。我怎样才能让颜色变成黑色?

我已经尝试了所有setBackground(Color.Black)关于“this”的内容,等等......

0 投票
5 回答
13875 浏览

java - 中央摆动窗

我正在开发一个 Java Swing 应用程序。我怎样才能使它在程序本身和任何其他窗口打开时出现在屏幕中央?

0 投票
3 回答
5777 浏览

java - 如何在不闪烁的情况下调整 Swing JWindow 的大小?

我正在尝试基于 a 制作自定义 UI JWindow,以便选择要共享的屏幕区域。我已经扩展JWindow并添加了代码以使其可调整大小并使用AWTUtilities.setWindowShape().

运行代码时,当窗口在负 x 和 y 方向(即向上和向左)调整大小时,我遇到了闪烁。似乎正在发生的事情是在更新组件之前调整窗口大小并绘制。下面是代码的简化版本。运行时,顶部面板可用于向上和向左调整窗口大小。窗口的背景设置为绿色,以明确我不想显示的像素在哪里。

编辑:改进了代码以使用 a 正确塑造窗口,ComponentListener并在底部添加了一个虚拟组件以进一步说明闪烁(也更新了屏幕截图)。

被覆盖的paint()方法可以用作断点,Thread.sleep()也可以在此处取消注释,以便在更新发生时提供更清晰的视图。

我的问题似乎源于setBounds()导致窗口在布局之前被绘制到屏幕上的方法。


调整大小之前的窗口,应如下所示:

替代文字


调整大小时的窗口(向上和向左),如在覆盖paint()方法的断点处所示):

替代文字


调整大小时的窗口更小(向下和向右),如在覆盖方法的断点处所见paint()):

替代文字


当然,这些屏幕截图是在激进的鼠标拖动运动期间拍摄的,但即使是更温和的鼠标拖动,闪烁也会变得非常烦人。

调整为更大屏幕截图的绿色区域显示了在任何绘画/布局完成之前绘制的新背景,它似乎发生在底层ComponentPeer或本机窗口管理器中。'resize to small' 屏幕截图上的蓝色区域显示JPanel' 背景被推入视野,但现在已经过时了。这发生在 Linux(Ubuntu) 和 Windows XP 下。

在对屏幕进行任何更改之前,有没有人找到一种方法来导致WindowJWindow调整后缓冲区的大小,从而避免这种闪烁效果?也许java.awt....可以设置一个系统属性来避免这种情况,但我找不到。


编辑#2:注释掉对的调用AWTUtilities.setWindowShape()(并且可以选择取消注释中的Thread.sleep(10)paint())然后积极地拖动顶部面板以清楚地看到闪烁的性质。

编辑#3:是否有人能够在 Windows 7 或 Mac OSX 上的 Sun Java 下测试此行为?

0 投票
1 回答
621 浏览

java - JLabel 在透明绘制的矩形上?

我将 JWindow 的背景设置为完全透明。然后我在它的paint-Method 中绘制了一个圆角矩形(RGB:0,0,0,100),并在JWindows ContentPane 中添加了一个JLabel。但是当我尝试重新绘制 JWindow 以更新 JLabel 时,它不会删除旧的 Rectangle 和 JLabel 的旧值。所以结果是我的自定义工具提示框(它应该是什么)变得不那么透明,并且您无法读取 JLabels 内容,因为它覆盖了旧的内容。

有没有办法解决这个问题?

顺便说一句,如果我不重新绘制,它不会变得不那么透明,但是当我重新绘制时,我的 JLabel 的新内容会覆盖旧内容,就像它一样。

0 投票
2 回答
1952 浏览

java - 从另一个线程更新 JLabel

亲爱的伙计们,我遇到了与挥杆相关的问题。我不能分享代码,因为它违反了公司政策,所以我会尽力解释这个问题。

简而言之,我创建了一个扩展包含 JLabel 的 JWindow 的类。此 JLabel 的文本通过一个计时器对象随机更新,该对象使用 scheduleAtFixedRate 方法每 50 毫秒实例化一个 TimerTask。JLabel 中的值是通过在一个单独的线程(我们称之为传输线程)中调用一个方法来检索的,该线程处理将数据传输到某个设备。问题是 JWindow 出现在屏幕上没有任何内容,直到传输到设备结束,然后我会得到传输线程的最后一个结果。会有什么问题?

0 投票
1 回答
2183 浏览

java - 设置 JWindow 背景图片


,我想为我的 JWindow 设置一个背景。我在 JWindow 中使用了 setIconImage 方法。但它不工作

怎么知道是什么问题?

这行代码创建了一个没有背景图像的全屏窗口。为什么?
我该如何解决?