问题描述
- 新手麻烦帮下怎么都不显示
-
package p1;import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.*;import javax.swing.*;
public class FCFS extends JFrame implements ActionListener{
Vector workVector; int status[]={0,0,0,0,0}; String workname[]={"作业名","提交时刻","要求运行时间","运行时刻","完成时刻","周转时间","带权周转时间"}; String worktable[][]=new String[5][7]; JTable workjtable; JScrollPane messageScrollPane; JToolBar toolBar = new JToolBar(); JButton InputButton; JButton FCFSButton; JButton exitButton; JTextField show; JTextArea source; public void actionPerformed(ActionEvent e) { Object obj = e.getSource(); if (obj ==InputButton) { String stringnum; Work work=new Work(); stringnum=JOptionPane.showInputDialog(this,"作业名、提交时刻、要求运行时间").trim(); StringTokenizer st0 = new StringTokenizer(stringnum); System.out.println(stringnum); if(st0.hasMoreTokens()) { work.workname=(String)st0.nextToken(); source.append("作业: "+work.workname); } if(st0.hasMoreTokens()) { work.refertime=Double.valueOf(st0.nextToken()).doubleValue(); source.append("提交时间为: "+work.refertime); } if(st0.hasMoreTokens()) { work.needtime=Double.valueOf(st0.nextToken()).doubleValue(); source.append("要求运行时间为: "+work.needtime); } source.append("n"); workVector.add(work); } if ( obj == FCFSButton) { for(int a=0;a<5;a++) { status[a]=0; } int i=0; double minrefertime,finishtime=0,T=0,sunT=0,sunW=0,W=0; Work work=new Work(); Work work1=new Work(); Work work2=new Work(); String msg; while(i<workVector.size()) { if(status[i]==0) { work=(Work)workVector.elementAt(i); worktable[i][0]=String.valueOf(work.workname); worktable[i][1]=String.valueOf(work.refertime); worktable[i][2]= String.valueOf(work.needtime); minrefertime=work.refertime; int j=0,k=i; while(j<workVector.size()) //找出最先到达的进程 { work1=(Work)workVector.elementAt(j);//指定索引处 if(minrefertime>work1.refertime&&status[j]==0) { minrefertime=work1.refertime; k=j; } j++; } T=sunT/i; W=sunW/i; msg="平均周转时间T="+T+"时间单位"+","+"平均带权周转时间W="+W; workjtable=new JTable(worktable,workname); show=new JTextField(30); show.setText(msg); messageScrollPane = new JScrollPane(workjtable, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); messageScrollPane.setPreferredSize(new Dimension(400, 101)); messageScrollPane.revalidate(); JFrame frame=new JFrame(); frame.setSize(400,180); frame.setLocation(200,300); frame.setTitle("FCFS的作业调度"); frame.setLayout(new BorderLayout()); frame.add(messageScrollPane,BorderLayout.NORTH); frame.add(show,BorderLayout.CENTER); frame.setVisible(true); } if ( obj == exitButton) { int j=JOptionPane.showConfirmDialog(this,"真的要停止服务吗","停止服务",JOptionPane.YES_OPTION,JOptionPane.QUESTION_MESSAGE); if(j==JOptionPane.YES_OPTION) { System.exit(0); } } }}} public static void main(String arg[]) { FCFS FCFS1=new FCFS(); } class Work { String workname=null; double refertime=0; double needtime=0; double starttime=0; double finishtime=0; double alltime=0; double ratealltime=0; }
}
解决方案
你把ui界面截个图,那么多代码谁知道你想实现显示什么东西
解决方案二:
你定义了一个类,而主程序只是创建了一个对象而已,当然没有什么东西显示。。。。
时间: 2024-08-27 04:30:50