使用javaawt创建GUI
因此,我想修改我的控制台应用程序以使用GUI(因为每次我想运行时在控制台中键入'java-jar'都很痛苦,我想使用JavaWebStart),但我甚至不完全确定从何处开始转换。下面是我的程序的工作原理 主文件如下所示:使用javaawt创建GUI,java,user-interface,awt,Java,User Interface,Awt,因此,我想修改我的控制台应用程序以使用GUI(因为每次我想运行时在控制台中键入'java-jar'都很痛苦,我想使用JavaWebStart),但我甚至不完全确定从何处开始转换。下面是我的程序的工作原理 主文件如下所示: package vector; import java.io.*; public class Vector extends GameFile { public static void main(String[] args) throws IOExce
package vector;
import java.io.*;
public class Vector extends GameFile
{
public static void main(String[] args)
throws IOException
{
int gameMode = 1; /*1: Return to title screen.
2: Start a new game.
3: Load from a checkpoint.
4: Quit the game.*/
while(true){
switch(gameMode)
{
default:
gameMode = intro.transition();
break;
case 2:
eventHandler.next(gameMode);
break;
case 3:
gameMode = ls.loadCheckpoint();
eventHandler.next(gameMode);
break;
case 4:
ut.print("Goodbye.");
return;
}
}
}
}
(ut.print是System.out.println快捷方式)
它与大多数其他文件一起扩展到GameFile之外:
package vector;
import iostream.*;
import util.*;
import pda.*;
public class GameFile {
public static BasicUtils ut = new BasicUtils();
public static IntroScreen intro = new IntroScreen();
public static Checkpoint ls = new Checkpoint();
public static EventHandler eventHandler = new EventHandler();
public static ColdStorage events = new ColdStorage();
public static PDA pda = new PDA();
}
这让我可以很容易地在代码中引用它们。以下是介绍屏幕的工作原理:
package iostream;
/*IMPORT RELEVANT FILES*/
import vector.*;
public class IntroScreen extends GameFile{
public int transition(){
ut.print("--- --- ------------ ------------ ------------ -------- ----------- ");
ut.print("*** *** ************ ************ ************ ********** *********** ");
ut.print("--- --- ---- --- ------------ ---- ---- ---- --- ");
ut.print("*** *** ************ *** **** *** *** ********* ");
ut.print("--- --- ------------ --- ---- --- --- --------- ");
ut.print(" ******** **** *** **** **** **** **** **** ");
ut.print(" ------ ------------ ------------ ---- ---------- ---- ---- ");
ut.print(" **** ************ ************ **** ******** **** **** ");
ut.print("-----------------------------------------------------------------------------");
ut.print("(1) BEGIN NEW GAME - (2) LOAD CHECKPOINT - (3) QUIT");
int errsPrinted=0;
while(true)
{
int menu;
try {
menu = ut.input.nextInt();
switch(menu)
{
case 1:
return 2; // Start game.
case 2:
return 3; // Load game.
case 3:
return 4; // Quit game.
}
}
catch(Exception e) {
ut.print("That's not a valid option.");
errsPrinted++;
if(errsPrinted>9)
{
return 4; // Quit game.
}
}
}
}
}
代码的其余部分没有太大区别;屏幕输入和打印快捷方式。但不知何故,我需要找出一种方法,将所有这些捆绑到一个GUI中,并能够从几个不同的文件对其进行操作。有没有人对如何开始这样做有什么建议?我有点不知所措。因为每次我想运行时在控制台中键入“java-jar”都很痛苦,只需双击jar文件欢迎使用stackoverflow。请试着问一个具体的问题,这样你更有可能得到一个有意义的答案。有更多信息。如果您正在使用Eclipse,您可以图形化地创建用户界面,例如使用Windowbuilder,请参阅。@BackSlash:这不起作用。这就是为什么我必须在控制台中键入'java-jar',以及为什么我试图制作一个GUI,而不是在控制台中显示东西的原因?关于放弃使用AWT组件的许多好理由,请参见上的回答。如果需要支持较旧的基于AWT的API,请参阅。