我正要开始开发一些Java应用程序,这样我就可以更好地了解这门语言了,对于我的第一个真正的项目,我想创建一个应用程序,当它加载时,它将提供两个不同的面板,即更改日志(从Tumblr检索到的?)另一个不太宽,包含一个登录表单或启动应用程序的按钮,一旦用户启动应用程序,它就关闭启动程序,然后打开主应用程序(如游戏)的JFrame。
我曾尝试过获得我的JFrame和这样的工作,但没有取得太大的成功。Wwhat是实现这一目标的最佳途径吗?
电流码
import java.awt.BorderLayout;
import java.awt.Canvas;
import java.awt.Dimension;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Launcher extends Canvas {
private static final long serialVersionUID = 1L;
public static final int LAUNCHER_WIDTH = 350;
public static final int LAUNCHER_HEIGHT = 200;
public static final int LAUNCHER_SCALE = 3;
public static final String LAUNCHER_TITLE = "Launcher";
public static void main(String[] args) {
Launcher l = new Launcher();
JFrame f = new JFrame();
JPanel c = new JPanel();
JPanel u = new JPanel();
JPanel s = new JPanel();
l.setPreferredSize(new Dimension(LAUNCHER_WIDTH * LAUNCHER_SCALE, LAUNCHER_HEIGHT * LAUNCHER_SCALE));
l.setMinimumSize(new Dimension(LAUNCHER_WIDTH * LAUNCHER_SCALE, LAUNCHER_HEIGHT * LAUNCHER_SCALE));
l.setMaximumSize(new Dimension(LAUNCHER_WIDTH * LAUNCHER_SCALE, LAUNCHER_HEIGHT * LAUNCHER_SCALE));
c.setLayout(new BoxLayout(c, BoxLayout.X_AXIS));
c.add(u);
c.add(s);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLayout(new BorderLayout());
f.setTitle(LAUNCHER_TITLE);
f.add(l, BorderLayout.CENTER);
f.add(c);
f.pack();
f.setResizable(false);
f.setLocationRelativeTo(null);
f.setVisible(true);
}
}发布于 2013-06-30 19:45:35
有几项建议:
Launcher(),不要扩展Canvas,因为这就是java.awt。JPanel或JFrame代替,因为它们是与其他swing组件更兼容的swinghttps://stackoverflow.com/questions/17393931
复制相似问题