我正在使用 Intelij 创意平台。
我有以下代码:
package GUI.test;
import javax.swing.*;
public class Frame extends JFrame{
Frame(){}
public void main (String[] args){
new Frame();
}
}
我希望在编译这段代码后看到一个 JFrame,但什么也没出现。会是什么问题?
默认情况下,框架是不可见的——使用
setVisible(true);
方法来显示帧。您可能还想看看其他选项,例如
setSize(int width, int height);
调整框架大小的方法,
setLocation(int xLoc, int yLoc);
移动框架,以及
setTitle(String title);
设置组件的标题。
此外,使用变量来保存组件是一种很好的做法,以便在需要时可以对其进行操作。
你可能想添加这个
Frame()
{
setVisible(true);
setSize(100,100);
}
package GUI.test;
import javax.swing.*;
public class Frame extends JFrame{
private myFrame;
public Frame()
{
myFrame = new JFrame("put a title here"); //title not necessary but it's there if you want it
myFrame.setSize(400,400); // sets the window size
myFrame.setVisible(true); // toggles the frame to be visible inside the window
myFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); // this will terminate the VM once the *last* JFrame is closed, so you can have multiple frames open and just close one
}
public void main (String[] args){
new Frame();
}
}
非常感谢您的回答。我写了一个没有细节的例子。我添加了:setVisible(true); 设置大小(100,100);
到类构造函数。但我还没有见过喷气式飞机。
不得不说一个特点。我没有在 Frame 类中运行 main 方法,而是在编译这个类 Frame。在我之前的 java 练习中,我总是运行 main 方法,但是当我尝试使用 GUI 表单并使用 swing 库时,运行方法 main 的能力已经消失。
如果你还没有咳嗽我的意思,我会发送截图。