Articles of swing

关于JFrames的问题

我正在运行Windows。 当你在Windows上运行一个应用程序时,你会得到一个button任务栏,你可以点击它来最大化和最小化它。 是否有可能创build一个JFrame没有这个或其他组件具有JFrame的function,但没有将其添加到任务栏。

全屏幕摆动框架在Linux中没有正确对焦(Windows很好)

我有一个应用程序,产生了几个全屏无装饰框架(基本上控制所有的屏幕空间)。 我的问题是,某些框架上的某些button被devise为“切换屏幕”,这基本上意味着显示另一个框架,而不是当前的框架。 我已经在Windows中使用这个轻松实现了这一点: target.setVisible(true); target.requestFocus(); this.parent.setVisible(false); target是我要切换到的帧。 这工作,因为最初,我设置所有框架除了第一个“主”框架不可见。 现在,当我把它移植到Linux环境中时,在改变帧的时候会出现一个难看的“闪烁”。 在这一瞬间,我可以看到我的桌面背景和我的应用程序背后存在的任何打开的窗口。 我之前在Windows中遇到了这个问题,并通过将目标框架集中到旧的目标框架之前,将其固定。 任何想法如何解决这个Linux的具体问题? 编辑: setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); setUndecorated(true); Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); setBounds(0,0,screenSize.width, screenSize.height); this.getContentPane().setLayout(null); setVisible(true); validate();

java.lang.NoClassDefFoundError:无法初始化类java.awt.Toolkit

我正在研究XUbuntu 13.04和开发摇摆应用程序。 正如我只想尝试该应用程序,我遇到了java.lang.NoClassDefFoundError: Could not initialize class java.awt.Toolkit启动时java.lang.NoClassDefFoundError: Could not initialize class java.awt.Toolkit 。 我发现了几个有关服务器/客户端虚拟机的问题,并注意到我有一台服务器虚拟机,而对于Linux 64,没有客户端虚拟机了。 但恕我直言,这个问题不应该依赖于我运行的虚拟机。 有没有人注意到这个问题,并解决了它? 我究竟做错了什么? 用64bit的jdk一切正常,但是当我尝试使用32位jdk的启动失败。 提前致谢! PS:Java版本是1.7.0_25 ,与1.7.0_09相同 编辑 使用无头模式时,会出现以下例外情况: java.lang.reflect.InvocationTargetException at java.awt.EventQueue.invokeAndWait(EventQueue.java:1272) at java.awt.EventQueue.invokeAndWait(EventQueue.java:1247) at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1349) at Main.main(Main.java:218) Caused by: java.awt.HeadlessException at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:207) at java.awt.Window.<init>(Window.java:535) at java.awt.Frame.<init>(Frame.java:420) at java.awt.Frame.<init>(Frame.java:385) at javax.swing.JFrame.<init>(JFrame.java:180) at ..MyFrame.<init>(MyFrame.java:23)

从terminal运行java程序

我正在开发一个Java程序运行在树莓派,我不能让它运行使用terminal。 它由两个类组成,这两个类都位于: /home/pi/JBerries/Access control/bin/access/control 另外请注意,这是一个使用swing制作的GUI程序。 这是我用来尝试运行它的命令: pi@raspberrypi ~/JBerries/Access control $ java -classpath .bin.access.control.accessControlUI 这就是它吐出来的东西: Usage: java [-options] class [args…] (to execute a class) or java [-options] -jar jarfile [args…] (to execute a jar file) where options include: -d32 use a 32-bit data model if available -d64 use a 64-bit data model if available -client to […]

Linux上的Java窗口半透明animation闪烁

我正在尝试使用半透明的JFrame在Java中进行animation制作。 我在这里修改了Oracle Java教程中的演示代码。 具体是渐变透明窗口演示。 以下代码在Windows XP SP3(最多8个)和Mac OS X Mountain Lion(甚至大多数 Linux)中都能很好地工作。 Linux中的问题,以及我需要帮助的是animation闪烁。 我使用nVidia驱动程序,Metacity和Compiz运行Ubuntu Linux 12.04 LTS 64bit。 PERPIXEL_TRANSLUCENT报告为真,运行良好。 在下面的代码中是否有我缺less的东西,或者有什么需要改变的Linux端? 我在JPanel上尝试了setDoubleBuffered(true),但是并没有消除闪烁。 请将我的代码更改引用到下面的演示: import static java.awt.GraphicsDevice.WindowTranslucency.PERPIXEL_TRANSLUCENT; import java.awt.Color; import java.awt.Dimension; import java.awt.GradientPaint; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; import java.awt.GridBagLayout; import java.awt.Paint; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.SwingUtilities; […]

如何告诉Java运行这个Runtime.getRuntime()。exec,而不必等待它运行的命令,只需在后端运行它?

如何让Runtime.getRuntime().exec(p)运行而不用等待睡眠10? 目前它是错误的,它等待执行完成,然后移动到下一个。 我需要在飞行中让exec运行,以便10秒后它可以杀死PresentationInProjector.jpg。 Example: Runtime.getRuntime().exec("(sleep 10; echo '09|00|CC|01|83|88' | nc localhost 58888) &"); PlayThisSlideShow("PresentationInProjector.jpg");

在我的Swing GUI中embeddedvideo的简单方法

我一直在寻找一种将videoembedded到Java Swing GUI中的简单方法。 我追风吗? 理想情况下,我喜欢有这样的东西: VideoPlayer video = new VideoPlayer("filename"); frame.getContentPane().add(video); video.play(); 我在寻找不存在的东西吗? 我主要针对Linux进行开发,但考虑到Windows,因此我可能会尝试在未来使应用程序跨平台。 附加信息: 我之前看过JMF,在实际显示和播放video之前所需的代码量并不令人满意。 我可能会再次访问它。 我想到了一个使用VLC播放video的embedded式浏览器,但又不是最简单的事情。 我完全控制了要播放的video的格式。 它们的数量是固定的,如果需要的话可以重新编码。

Java透明窗口

我正在尝试创build一个跟随鼠标的圆形窗口,并将点击传递给底层窗口。 我正在用Python和Qt(请参阅Python覆盖窗口 )做这个,但后来我切换到Java和Swing。 但是,我无法使窗口透明。 我试过这种方法,但它不起作用,但我认为我的系统支持透明度,因为如果我启动Screencast-O-Matic (这是在Java中),矩形实际上是透明的。 我怎么能做到这样的事情? (我在Linux KDE4上)

比较GUI开发工具for linux

我对GUIdevise和开发的领域相当陌生。 我确实有一些以前的经验,但那是用Visual Basic。 我想开发一个基于命令行应用程序的Linux上相当全面的(虽然不是最先进的)GUI应用程序。 我有。 做了一些Googlesearch之后,我发现主要有三个好的 (或者我觉得是这样的)方法来实现这个目标: 以GLADE作为devise者的GTK +库 用Qtdesigner作为devise者的Qt库 Java与Netbeans的摇摆 为了解决上述问题之一(或者拒绝所有这些问题),我将不得不了解上面列表中每个项目的以下几个方面。 这些方面按其优先顺序依次为: 许可证:我不能在这里掏出太多的钱 编程语言支持:我知道C / C ++和Java很less。 易于学习/使用 灵活性和强大function:如果我需要的大多数(如果不是全部的)function都可以在核心库中使用的话,那将是非常好的。 (缺less)附加依赖关系:推理与点编号4相同 外观和感觉 支持的平台/可移植性(切换平台所需的努力) 关于上述话题的任何想法都将值得他们在黄金领域的重视(我不想在一个月后意识到我为我的工作select了错误的工具)。 还有什么其他的工具更符合我的意图,我不知道? 空白的答案将最有帮助。 编辑:好的,所以我终于用Qt。 简单地说,因为它比GTK +更容易学习,并且显得更加便于携带(对我来说)。

为什么我的Java GUI在第一次移动时会“跳跃”?

我有一个简单的Java GUI(下面的代码),由于某种原因,当显示时,将第一次尝试移动或调整它的大小,将“跳转”回到它的原始位置。 所以基本上我必须两次移动gui才能让它移动一次,因为只要我第一次释放鼠标,它就会回到原来的位置。 import javax.swing.*; public class JFrameTester { public static void main(String[] args) { JFrame f = new JFrame("A JFrame"); f.setSize(250, 250); f.setLocation(300,200); f.getContentPane().add(new JTextArea(10, 40)); //f.pack(); f.setVisible(true); //f.validate(); } } 我正在用java 1.6运行在GNU Linux上 。 我将显示导出到我的Windows机器,并想知道它是否与X11转发有关,因为在Windows中运行gui时它不显示此行为。 但是,当我在Fedora Linux机器上运行这个gui(用java 1.7)时,根本不显示这个行为 – 不pipe是否导出显示。