我正在创建几个类来简化创建GUI、应用辅助功能设置、绘制图形等过程,我已经取得了很大的进步;但我有一个想法,如果可行,那就太好了,我想知道这是否可能。现在,我有一个“JFrameBuilder”类,其方法如下:/***The"addButton"methodaddsabuttontoaJFrame*@paramappTheparentwindow(aJFrame)*@paramtextThebuttontext*@paramxThex-coordinatewherethebuttonshouldappear*@paramyThey-coordinatewherethebuttonsho
我看到的区别是(在JDK1.7上运行):setVisible(false),invokescomponentHiddenbutnotwindowClosed(TheAPIstatesonlyondispose()soit'sOKevenifitirritatesme)但是dispose(),invokeswindowClosedbutnotcomponentHidden短期运行示例代码(MCVE):publicclassJDialogTestextendsJDialog{privatestaticfinallongserialVersionUID=1L;publicJDialogTes
我正在构建我的第一个Swing应用程序,并试图弄清楚我的JDialogs(当用户选择JMenuItem时专门调用)如何更新JFrame的主客户区中的组件,该主客户区是整个应用程序。这是我想出的设计,但不知道它是否:(1)很糟糕,(2)不是标准(因此最好)的方式,或者(3)如果我完全在这里偏离基地。非常感谢任何建议。基本上,用户选择一个JMenuItem,它启动一个JDialog。用户与对话框上的组件交互,然后单击“完成”。如果一切都通过验证,JDialog将关闭,我希望父窗口(一个JFrame)更新其状态(并最终波及到其组件)。我的设计:有一个作为JFrame子类(我的应用程序)成员的
在扩展javax.swing.JFrame时,推荐使用setTitle("Title")或super("Title")设置标题的方法是什么在性能方面? 最佳答案 如果您对JFrame(在OpenJDK6-b14中)进行grepcode,并深入挖掘,您会看到构造函数JFrame()调用了构造函数Frame(),它调用Frame("")(link)。因此,如果您自己不指定对任何super构造函数的调用,则会添加隐式super(),因此调用会更有效(尽管非常轻微)super(“标题”)。 关于
我正在尝试为我的游戏引擎架构类(class)构建一个简单的游戏基础。但是我的JFrame不会显示任何内容。我的代码目前结构如下:Implementation.java(这是我正在创建的引擎包的任意实现)publicclassImplementation{publicstaticvoidmain(String[]args){Worldw=newWorld("Hej","M:\\workspace\\SP6\\pics\\tulips.jpg",1024,768);}}世界.javapublicclassWorldextendsJFrame{privatestaticfinallongse
我正在用Java开发老虎机,到目前为止我创建了一个按钮,它会随机生成两张图片。我的代码可以编译,但是当我运行它时,我放入paint方法中的所有内容都没有显示出来。我有什么想念的吗?感谢您的帮助,这是我的一些代码。publicvoidpaint(Graphicsg){super.paintComponents(g);g.drawString("Int1is"+int1,30,30);g.drawString("Int2is"+int2,30,80);switch(int1){case0:g.setColor(Color.white);g.fillRect(300,300,300,500)
在Java中实现“按x继续”类型的东西的最佳方法是什么?具体来说,我有一个扩展JFrame的自定义类和一个扩展JPanel的自定义类。我有一个Main.java(它有一个我的JFrame类的实例),有一点我不想继续,直到用户按下空格键:主要.java:...code...frame.waitForSpace();...morecodewhichgetsexecutedonlyafterspaceispressed...那么,在我的框架类中,我应该如何实现:MyFrame.java:/*Thismethodonlyfinisheswhenthespacebarispressed*/pub
我尝试了addWindowListener并实现了windowClosing,当我按下关闭按钮时,它起作用了,但是当我使用Cmd+Q时要关闭,windowClosing没有被调用,我该如何解决?我是否需要通过按键监听器在Mac上检测Cmd+Q,在Windows上检测Alt+F4?这是关闭窗口的通用监听器,无论是通过关闭按钮或键盘,还是通过事件Ctrl+Alt+Delete或Cmd+Option+Esc来集中杀戮?谢谢。 最佳答案 我不确定在Mac上的情况如何,但在Windows上您会从关闭按钮获得windowClosing()回调;
我需要程序-主JFrame有2个按钮按钮按钮2当我单击button时,它必须打开带有新选项的新JFrame窗口,而如果我单击button2则打开另一个窗口。在这两个新窗口中,我必须添加像下一个和上一个这样的按钮。我有一个问题,当我打开按钮1,然后打开2个窗口时,主JFrame仍然可见。我的第一个swing程序:importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassexample{publicstaticvoidmain(String[]args){JFrameframe=newJFrame("Tes
这可能看起来很愚蠢(而且可能确实如此),但我如何才能将JFrame中的所有组件颠倒过来?JFrame中的所有内容都必须围绕JFrame中间的轴垂直翻转,包括控件上的文本。最好使用JTextField、JButton等。即使翻转也能按预期工作。我进行了一些搜索,但没有发现任何对这个主题有帮助的内容。有没有比手动更改布局然后扩展和覆盖所用每个控件的绘制方法更简单的方法?编辑:我设法让它工作。可以看到myanswerbelow. 最佳答案 您可以轻松翻转GUI,而无需修改所有组件,只需修改最顶层容器的paint方法即可:classReve