草庐IT

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

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

java - 如何使图像大小适合 JFrame 大小?

我有一个JPanel到一个JFrame中。我在JPanel上加载了一张图片,但它只显示了图片的一部分:这是我执行此操作的代码部分:JPanelpanelImg=newJPanel(){publicvoidpaintComponent(Graphicsg){Imageimg=newImageIcon("Welcome.png").getImage();Dimensionsize=newDimension(img.getWidth(null),img.getHeight(null));setPreferredSize(size);setMinimumSize(size);setMaximu

java - 拖动未修饰的 JFrame 并调整其大小

目前,我正在使用以下代码来拖动和移动未解码的JFrame。privatevoidinitialiseGUI(Componentcomponent){//component.addMouseListener(newMouseAdapter(){publicvoidmousePressed(MouseEvente){posX=e.getX();posY=e.getY();}});component.addMouseMotionListener(newMouseAdapter(){publicvoidmouseDragged(MouseEventevt){//setsframepositio

java - 如何设置 jframe 外观

我对把它放在哪里有点困惑:try{UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");}catch(Exceptione){}我没有扩展JFrame类,而是使用了JFramef=newJFrame();谢谢:D 最佳答案 最常见的地方就是在你的staticvoidmain(String

java - 如何在 Java 中使 JFrame 可滚动?

我有这段代码,我试图在其中放置一个可滚动的面板(JPanel),但我不明白。这是我的代码:publicclassSniffer_GUIextendsJFrame{Canvasc=newCanvas();ConnectorPropertiesPanelprops;publicSniffer_GUI(){super("JConnectordemo");setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);getContentPane().setLayout(newGridBagLayout());init();getContentPane().add

java - 将图像添加到 JFrame

所以我将Eclipse与Windows构建器一起使用。我只是想知道我是否可以导入一个图像,该图像将显示在JFrame上,我可以轻松地四处移动并调整大小,而不是设置位置和大小并绘制它。 最佳答案 这是一个将图像添加到JFrame的简单示例:frame.add(newJLabel(newImageIcon("Path/To/Your/Image.png"))); 关于java-将图像添加到JFrame,我们在StackOverflow上找到一个类似的问题: htt

java - 无法在 ActionListener 中添加 GridBagLayout

我有一个JMenuItem和一个ActionListener,在这个ActionListener中我想添加一个GridBagLayout到我的frame(它可能有也可能没有已添加的内容Pane-出于测试目的它没有)然后将components添加到该frame.框架的设计独立运行,但我想从JMenuItem上的ActionListener触发它,并且这是我遇到问题的地方。它不会从ActionListener内部显示。我已经尝试从AL的类中的不同方法运行相同的代码,但也没有用。当我完全注释掉ActionListener时,我要测试的JLabel会在正确的位置添加到GBL中,并且系统打印我的

java - 总是在顶部窗口

我正在寻找一种解决方案,以便让JFrame始终位于最前面,而且始终是我真正的意思是始终。setAlwaysOnTop(true);当我以全屏模式开始游戏时,这将不起作用。我知道您通常不希望窗口保持在顶部,但在这种情况下这是必需的。 最佳答案 这是不可能的。例如,Windows任务管理器,即使设置为总在最前面也会被全屏应用程序覆盖。这是因为全屏应用程序通常使用不同的图形上下文并且无法叠加。 关于java-总是在顶部窗口,我们在StackOverflow上找到一个类似的问题:

从 Eclipse 运行时不显示 Java JFrame 窗口

一个很简单的问题。我尝试运行一个非常简单的演示来从Eclipse创建和显示窗口框架,但没有任何反应。没有错误,没有窗口,代码运行完成。我添加了断点并确保代码按预期运行。代码直接来自Java教程(FrameDemo),我只是重命名了包以适合我放置它的位置(此包中的其他代码运行良好):packageui;importjava.awt.*;importjavax.swing.*;/*FrameDemo.javarequiresnootherfiles.*/publicclassFrameDemo{/***CreatetheGUIandshowit.Forthreadsafety,*thism

java - 如何将多个组件添加到 JFrame?

我有一个JFrame。我还有一个扩展Component的Box类。这个盒子类有一个paint方法,可以制作一个填充的矩形。当我将多个这些Box组件添加到我的JFrame时,当我在JFrame上调用repaint时,只会显示最近添加的组件。我查看了布局管理器,但不确定这是否是我想要的。我想要的只是能够在屏幕上任何我想要的地方制作一大堆矩形的动画。(我还尝试创建一个面板,将面板添加到JFrame,然后将所有Box组件添加到面板。这也没有用)。提前致谢! 最佳答案 您有2个选择。您可以更改框架的布局:JFrameframe;frame.s