草庐IT

java - 将另一个类的 JPanel 添加到 JFrame 中的 JPanel

我无法从主类获取我的JFrame来显示另一个类的JPanel。一切都编译无误。JFrameTest.java:packagejframetest;importjava.awt.FlowLayout;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JPanel;publicclassJFrameTestextendsJFrame{publicJFrameTest(){FlowLayoutmainLayout=newFlowLayout();setSize(320,480);setResizable(

java - 扩展 JFrame

扩展JFrame而不是创建新JFrame的优缺点是什么?例如:publicclassTestextendsJFrame{setVisible(true);}或publicclassTest{JFrametest=newJFrame():test.setVisible(true);} 最佳答案 你不应该扩展一个类,除非你真的想扩展它的功能,在你展示的例子中,你应该使用选项2,因为选项1是对extending的滥用功能。换句话说-只要问题的答案isTestaJFrame?是NO,它就不应该扩展JFrame.

java - 如何在 JFrame/JPanel 中可视化控制台 java

我使用Swing库制作了一个Java程序。现在我想将我的控制台输出重定向到JFrame或JPanel。 最佳答案 您需要创建一个OutputStream将输出重定向到文本区域并实现OutputStream接口(interface)的所有必要方法,然后在您的主程序中,将您的标准输出重定向到该流中。我在我的一个程序中使用了这样的东西:importjava.io.IOException;importjava.io.OutputStream;importjavax.swing.JTextArea;importjavax.swing.Swin

java - 如何在不关闭主程序的情况下关闭 jframe

我正在创建一个程序来跟踪DVD列表。在主页面上,我设置了2个JButton。当用户单击显示为新的那个时,来自另一个类的新JFrame会出现一些字段以输入有关新DVD的信息。我正在尝试在第二个框架上制作一个取消按钮,这样当点击取消按钮时,它会返回主GUI并关闭新的入口GUI。代码在下面,我不知道该怎么做。主GUI页面packagedvdlibrary;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;publicclassbootPageextendsjavax.swing.JF

java - setSize() 不适用于 JFrame

importjavax.swing.JFrame;importjavax.swing.SwingUtilities;classDemo{JFramejf;Demo(){jf=newJFrame("Demo");jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jf.setSize(5000,5000);jf.setVisible(true);System.out.println(jf.getSize());}publicstaticvoidmain(String[]args){SwingUtilities.invokeLater(new

java - 设置 JDialog 相对于 JFrame 的位置

有没有办法设置相对于JFrame的对话框位置?我想将对话框居中放置在我的GUI所在的框架上,但对话框通常出现在屏幕中央而不是GUI中。 最佳答案 IsthereawaytosetalocationrelativetoanotherJFrame您可以:传递JFrame作为JDialog.setLocationRelativeTo(Componentc)的参数设置为所需的Point从JFrame到JDialog.setLocation(Pointp)编辑所有Swing代码必须在EventDispatchThread上完成,这意味着set

java - 如何捕获 JFrame/Swing 中的所有鼠标事件?

我有一个JFrame,它有大量不断变化的子组件。(很多层)有没有办法为所有的鼠标事件添加一个监听器?像KeyEventDispatcher这样的东西? 最佳答案 使用AWTEventListener过滤掉鼠标事件:longeventMask=AWTEvent.MOUSE_MOTION_EVENT_MASK+AWTEvent.MOUSE_EVENT_MASK;Toolkit.getDefaultToolkit().addAWTEventListener(newAWTEventListener(){publicvoideventDisp

java - 在 JFrame 中将图像绘制到 JPanel

我正在设计一个在JFrame中包含两个JPanel的程序,一个用于保存图像,另一个用于保存GUI组件(搜索字段等)。我想知道如何将图像绘制到JFrame中的第一个JPanel?这是我的构造函数的示例代码:publicUITester(){this.setTitle("Airplane");Containercontainer=getContentPane();container.setLayout(newFlowLayout());searchText=newJLabel("EnterSearchTextHere");container.add(searchText);imagepan

java - 使用 getGraphics() 绘制对象而不扩展 JFrame

如何在没有类(扩展JFrame)的情况下绘制对象?我找到了getGraphics方法,但它没有绘制对象。importjavax.swing.*;importjava.awt.*;publicclassMain{publicstaticvoidmain(String[]args){JFrameframe=newJFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);frame.setSize(600,400);JPanelpanel=newJPanel();frame.add

Java Swing : How can I implement a login screen before showing a JFrame?

我正在尝试制作一个小游戏,首先会向玩家显示一个简单的登录屏幕,他们可以在其中输入自己的名字(稍后我需要它来存储他们的游戏状态信息),让他们选择难度级别等,并且只会在玩家点击播放按钮后显示主游戏屏幕。我还想让玩家导航到一个(希望对他们来说相当大)奖杯Collection,同样在他们看来是一个新屏幕。到目前为止,我有一个带有网格布局的主游戏窗口和一个可以运行的游戏(对我来说太棒了!)。现在我想添加上面的功能。我该怎么做呢?我不认为我想走多个JFrame路线,因为我一次只希望在任务栏中显示一个图标(或者将它们的可见性设置为对图标也产生错误影响?)我是否改为制作和销毁布局或面板或像那样的东西?