/ * main- frame * /
import java.awt。*; import java.awt.event。*;
import javax.swing。*; 公共类主机{
public Mainframe() {
// TODO Auto-generated constructor stub
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SimpleThread ST = new SimpleThread();
ST.start();
}
}
/ *简单线程* /
import java.awt。*; import java.awt.event。*;
import javax.swing。*; import java.lang.Thread。*; class SimpleThread扩展Thread { public SimpleThread(){ // super(str); } public void run(){ 的System.out.println( “输入”);
PaintDisp P= new PaintDisp();
P.init();
Mouseact MA= new Mouseact();
//MA.paint1();
//P.start();
System.out.println(" mouse exits");
System.out.println("exits");
for (int i = 0; i < 100; i++)
{
// Mouseact MA= new Mouseact();
System.out.println("hi");
try {
sleep((int)(Math.random() * 10));
} catch (InterruptedException e) {}
}
System.out.println("DONE! " + getName());
}
}
/ * paint disp * /
import java.awt。*; import java.awt.event。*; import javax.swing。*;
import java.io. ; import java.awt.image。; import java.lang.Thread。*; public class PaintDisp extends Constants实现了Runnable {
public void run(){init(); }
public void init(){
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
setSize((int)xpix,(int)ypix);
setUndecorated(true);
show();
}
public void paint(Graphics g) {
//super(paint);
Graphics2D g2=(Graphics2D)g;
g.setColor( dackground ); // background color
g.fillRect( 0, 0, getWidth(), getHeight() ); // To draw (xpix X ypix) Frame
g.setColor(Color.white);
g.drawRect( 1, 1, getWidth()-3, getHeight()-3 ); // To Draw Outer most Rect
g.drawRect( (int)(meter_border[0]*adjx), (int)(meter_border[1]*adjy), (int)(meter_border[2]*adjx),(int)(meter_border[3]*adjy)); // Static Field Boarder
g.drawRect( //System.out.println(":"+((int)(391*adjx))+":"+((int)(61*adjy))+":"+((getWidth()-401)*(int)adjx)+":"+((getHeight()-279)*(int)adjy));
// mainpower MP= new mainpower();
// To Draw Outer most Rect
ReadTest1 RD= new ReadTest1();
RD.ReadTest2(g,g2);
RD.meterpointer(g, g2,pointerset);
Subsystem SB= new Subsystem();
SB.subsystem(g,g2,subsysystatus);
mainpower MP= new mainpower();
if(rect20Clicked){
// int scr1=1;
MP.screens(g,g2);
MP.screenescape(g,g2);
//rect20Clicked=true ;
}
if(rect1Clicked ){
System.out.println(scrn);
MP.powercircuit(g,g2);
MP.escape(g,g2);
}
//}
else if(rect5Clicked){
MP.TractionMotor(g,g2);
MP.escape(g,g2);
}
else if(rect3Clicked){
MP.AuxiliaryConverter(g,g2);
MP.escape(g,g2);
}
else if(rect7Clicked){
MP.HarmonicHotel(g,g2);
MP.escape(g,g2);
s
}
else if(rect9Clicked){
MP.AuxiliaryMachines(g,g2);
MP.escape(g,g2);
}
else if(rect11Clicked){
MP.SubSystemIsolation(g,g2);
MP.escape(g,g2);
}
else if(rect18Clicked){
System.out.println ("LOCO ="+LOCO);
MP.software_version(g,g2,locono);
MP.escape(g,g2);
}
else if(rect15Clicked){
MP.BrakeSystem(g,g2);
MP.escape(g,g2);
}
else if(rect17Clicked){
MP.wheel_diameter(g,g2);
MP.escape(g,g2);
}
else if(rect19Clicked){
MP.kmearned_enery(g,g2);
MP.escape(g,g2);
}
else if(rect2Clicked){
MP.screens(g,g2);
MP.screenescape(g,g2);
}
else if(rect4Clicked){
MP.escape(g,g2);
}
else if(rect6Clicked){
MP.AuxiliaryMachines (g,g2);
MP.escape(g,g2);
}
else if(rect8Clicked){
MP.HarmonicHotel(g,g2);
MP.escape(g,g2);
}
else if(rect10Clicked){
MP.escape(g,g2);
}
else if(rect25Clicked){
repaint();
}
else if(rect14Clicked){
}
else if(rect16Clicked){
}
else if(rect18Clicked){
}
else if(rect21Clicked){
MP.traction_braking(g,g2);
MP.escape(g,g2);
}
else if(rect22Clicked){
MP.tempetature(g,g2);
MP.escape(g,g2);
}
else if(rect23Clicked){
MP.oil_pressure(g,g2);
MP.escape(g,g2);
}
else if(rect24Clicked){
MP.config_switches(g,g2);
MP.escape(g,g2);
}
}
}
/ *常数* /
import java.awt.Color; import java.awt.image.BufferedImage; import java.io.FileInputStream; import java.awt。*; import java.awt.event。*; import javax.swing。*; import java.io. ; import java.awt.image。;
public class Constants扩展了JFrame {
final double adjx = 1; //
final double adjy = 1; //
final double xpix = 640*adjx; // To Set the Frame X Resolution
final double ypix = 480*adjy; // To Set the Frame Y Resolution
int locodatax=280;
int locodatay=29;
int locodata_w=25;
int locodata_h=30;
final int CENTER_PIX_X = 320; // 640 800
final int CENTER_PIX_Y = 240-26; // 480 600 -26 to shift meter up
final int METER_X=470; // METER X COORDINATE
final int METER_Y=195;// METER Y COORDINATE
final int RECT_W = 300; // 310,to make equal partition
final int RECT_H = 195;
final int DEFAULT_SCREEN_X=5;
final int DEFAULT_SCREEN_Y=62;
final int DEFAULT_SCREEN_W=211;// 317 width
final int DEFAULT_SCREEN_H=307;
// variable that will be true when the user clicked i the rectangle
// the we will draw.
/*----Display Resolution-----------*/
int popwidth = 400;
int pophight = 100;
final int CENTER_OVEL_W = 25;//30
final int CENTER_OVEL_H = 25;//30
final int RADIOUS = 120; //260
final int rad = ((RADIOUS-(RADIOUS/3))/2); // 90
double half = RADIOUS/2;
double base =(Math.sqrt((2*(half*half))));
int getWidth = 640; // border width
int getHeight = 480; // border height
/* Driver Details*/
int dix = 5;//15 ;driver x coordinate
int diy = 8;//40 ; driver y coordinate
int diwidth = 627; //400 525 ; driver width
int dihight = 20; // driver height
/*locono Date and Time Details*/
final int loconox = 210; // locono table x coordinate
final int loconoy = 68; // locono table y coordinate
final int locono_w = 225; // locono table width
final int locono_h = 20; // locono table height
/* Sub system Details*/
final int subx = 8; // ;subsystem x coordinate
final int suby =69; // ;subsystem y coordinate
final int sub_w = 32; // ;subsystem width
final int sub_h = 25; // ;subsystem height
/* screens details*/
final int screens_border [] = { 219,61,412,309 };
final int screens_display [] = { 226,130,195,25 };
/* Mouse Actions*/
int mainpowerx = 224;//219+27;//260
int mainpowery=130;
int mainpowerw=195;
int mainpowerh = 25;
int xpos=-10; int ypos=-10;
int scr=0;
int scr1=0;
boolean mouseEntered;
boolean rect1Clicked;
boolean rect2Clicked;
boolean rect3Clicked;
boolean rect4Clicked;
boolean rect5Clicked;
boolean rect6Clicked;
boolean rect7Clicked;
boolean rect8Clicked;
boolean rect9Clicked;
boolean rect10Clicked;
boolean rect11Clicked;
boolean rect12Clicked;
boolean rect13Clicked;
boolean rect14Clicked;
boolean rect15Clicked;
boolean rect16Clicked;
boolean rect17Clicked;
boolean rect18Clicked;
boolean rect19Clicked;
boolean rect20Clicked;
boolean rect21Clicked;
boolean rect22Clicked;
boolean rect23Clicked;
boolean rect24Clicked;
boolean rect25Clicked;
int scrn=0;
int rect1xco = (int )((mainpowerx)*adjx);
int rect1yco = (int )((mainpowery)*adjy);
int rect1width = (int )((mainpowerw)*adjx);
int rect1height =(int )((mainpowerh)*adjy);
int rect3xco =(int )((mainpowerx)*adjx);
int rect3yco = (int )((mainpowery+27)*adjy);
int rect3width = (int )((mainpowerw)*adjx);
int rect3height =(int )((mainpowerh)*adjy);
int rect5xco = (int )((mainpowerx)*adjx);
int rect5yco =(int )((mainpowery+54)*adjy);
int rect5width = (int )((mainpowerw)*adjx);
int rect5height = (int )((mainpowerh)*adjy);
int rect7xco = (int )((mainpowerx)*adjx);
int rect7yco = (int )((mainpowery+81)*adjy);
int rect7width =(int )((mainpowerw)*adjx);
int rect7height = (int )((mainpowerh)*adjy); //mainpowerx;
int rect9xco = (int )((mainpowerx)*adjx); //mainpowery+108;
int rect9yco =(int )((mainpowery+108)*adjy);
int rect9width =(int )((mainpowerw)*adjx); //mainpowerw;
int rect9height = (int )((mainpowerh)*adjy);
int rect11xco = (int )((mainpowerx)*adjx);
int rect11yco = (int )((mainpowery+135)*adjy);
int rect11width = (int )((mainpowerw)*adjx);
int rect11height = (int )((mainpowerh)*adjy);
int rect13xco = (int )((mainpowerx)*adjx);
int rect13yco = (int )((mainpowery+162)*adjy);
int rect13width = (int )((mainpowerw)*adjx);
int rect13height = (int )((mainpowerh)*adjy);
int rect15xco = (int )((mainpowerx+205)*adjx);
int rect15yco = (int )((mainpowery)*adjy);
int rect15width = (int )((mainpowerw)*adjx);
int rect15height =(int )((mainpowerh)*adjy);
int rect17xco = (int )((mainpowerx+205)*adjx);
int rect17yco = (int )((mainpowery+108)*adjy);
int rect17width =(int )((mainpowerw)*adjx);
int rect17height = (int )((mainpowerh)*adjy);
int rect18xco = (int )((mainpowerx+205)*adjx);
int rect18yco = (int )((mainpowery+162)*adjy);
int rect18width =(int )((mainpowerw)*adjx);
int rect18height = (int )((mainpowerh)*adjy);
int rect19xco = (int )((mainpowerx+205)*adjx);
int rect19yco = (int )((mainpowery+135)*adjy);
int rect19width = (int )((mainpowerw)*adjx);
int rect19height =(int )((mainpowerh)*adjy);
int rect20xco = (int )((subx+38)*adjx);
int rect20yco = (int )((suby+270)*adjy);//suby+270;
int rect20width =(int )((sub_w)*adjx);
int rect20height = (int )((sub_h)*adjy);
int rect21xco = (int )((mainpowerx)*adjx);
int rect21yco = (int )((mainpowery+162)*adjy);
int rect21width = (int )((mainpowerw)*adjx);
int rect21height = (int )((mainpowerh)*adjy);
int rect22xco = (int )((mainpowerx+205)*adjx);
int rect22yco = (int )((mainpowery+27)*adjy);
int rect22width = (int )((mainpowerw)*adjx);
int rect22height =(int )((mainpowerh)*adjy);
int rect23xco = (int )((mainpowerx+205)*adjx);
int rect23yco =(int )((mainpowery+54)*adjy);
int rect23width = (int )((mainpowerw)*adjx);
int rect23height = (int )((mainpowerh)*adjy);
int rect24xco = (int )((mainpowerx+205)*adjx);
int rect24yco = (int )((mainpowery+81)*adjy);
int rect24width =(int )((mainpowerw)*adjx);
int rect24height = (int )((mainpowerh)*adjy);
int rect2xco = (int )((575)*adjx); //575;
int rect2yco = (int )((65)*adjy);//65;
int rect2width = (int )((50)*adjx); //50;
int rect2height = (int )((20)*adjy);//20;
int rect25xco = (int )((575)*adjx); //575;
int rect25yco = (int )((65)*adjy);//65;
int rect25width = (int )((50)*adjx); //50;
int rect25height = (int )((20)*adjy);//20;
Color dackground = new Color(0,0,0);
Color block = new Color(163,225,255,155); // for Blue Gray Color
Color Green = new Color(102,255,153,255); // for Green Color
Color Red = new Color(200,51,51,200); // for Red Color
Color Yellow = new Color(255,255,51);
Color Gray = new Color(161,161,161,205); // for Gray Color
Color pantoback = new Color(61,61,61); // for Panto Background Gray Color
Color line = new Color(224,224,224,55); // for Panto Line
Color subcolor = new Color(31,31,31); // for Subsysrem background Color
Color voltcurrentbackground = new Color(31,31,31,255); // for voltage & Current Background
Color lightpink = new Color(253,204,255,50);
/*-------Main Screen all Squre Border ---------------*/
final int meter_border [] = { 391, 61 , 240, 201 }; // Meter Border X , Y ,W ,H
final int static_field_border [] = { 220, 61, 168, 309 }; // Static Field Boarder X, Y, W ,H
final int battery_border [] = { 391, 266, 78, 104 }; // Battery Boarder X , Y ,W ,H
final int auto_brake_pressure_border [] = { 472, 266, 78, 104 }; // Auto Brake Pressure X , Y ,W ,H
final int line_frequency_border [] = { 553, 266, 78, 104 }; // Line Frequency Boarder X , Y ,W ,H
final int default_screen [] = { 5, 61, 212, 309 }; // Default_screen X , Y ,W ,H
final int lcd_Boarder [] = { 331, 373, 300, 100}; // LCD Boarder
final int screen_button []={42,336,37,29}; // screen button X,Y,W,H
/* ---------Driver Details------------------------*/
final int driver_info [] = { 10, 18, 627, 18 }; // Driver INFO X1 ,Y1, X2, Y2
final int stno = 3; // Station number Display on screen
int st = 0;
final int diff = ((int)(585*adjx))/(stno-1); // Each Station Diference
int stdiff = 0;
final int trpos = 4; // Position of the Train
int trdiff = 0;
/*---------loconodatetime, Panto UpDown, VCB, Brake Applied------------*/
// final String LOCO_NO =“E:\ Pratibha \ eprog \ workspace \ Driver Display1.2 \ src \ loco no.txt”; FileInputStream fin; String locono =“XXXXX”; 字符串LOCO; public static String dt; public static final String DATE_FORMAT_NOW =“dd-MM-yyyy HH:mm:ss”;
final int loconodatetime [] = { 5, 29, 627, 30 }; // loconodatetime X Y W H
final int locodata [] ={ 280, 29, 25, 30 }; // For Panto VCB Brake MR Pressure
int pantoupdown = 1; // Run Time Variable
int vbconoff = 1; // Run Time Variable
int brakeapp = 1;
/* ----------------Sub system Details------------------*/
final int subw = 32;
final int subh = 25;
final int subsystem[][] = { { 8, 68, subw, subh },/*for SS01*/ { 44, 68, subw, subh },/* for SS02*/
{ 8, 98, subw, subh },/*for SS03*/ { 44, 98, subw, subh },/* for SS04*/
{ 8, 128, subw, subh },/*for SS05*/ { 44, 128, subw, subh },/* for SS06*/
{ 8, 158, subw, subh },/*for SS07*/ { 44, 158, subw, subh },/* for SS08*/
{ 8, 188, subw, subh },/*for SS09*/ { 44, 188, subw, subh },/* for SS10*/
{ 8, 218, subw, subh },/*for SS11*/ { 44, 218, subw, subh },/* for SS12*/
{ 8, 248, subw, subh },/*for SS13*/ { 44, 248, subw, subh },/* for SS14*/
{ 8, 278, subw, subh },/*for SS15*/ { 44, 278, subw, subh },/* for SS16*/
{ 8, 308, subw, subh },/*for SS17*/ { 44, 308, subw, subh },/* for SS18*/
{ 8, 338, subw, subh },/*for SS19*/ { 44, 338, subw, subh },/* for SS20*/
}; // 1 - 19 subsystem X Y W H
String subsystem_string [] = {"SS01","SS02","SS03","SS04","SS05","SS06","SS07","SS08","SS09","SS10",
"SS11","SS12","SS13","SS14","SS15","SS16","SS17","SS18","SS19"," "
};
int [] substatus = new int [20]; // subsystem Run Time Variable
int subsysystatus = 1; // Run Time Variable
/*--------------------------Voltage and Current bar Details------------------------*/
// ----------------屏幕细节-------------------------- < / p>
// final int screens_border [] = {219,61,412,309}; //屏幕边框X Y W H. // final int screens_display [] = {226,130,195,25}; //屏幕内部块X Y W H. final int screens_row [] = {97,124,151,178,205,232,259,286,313,340}; //内部块Y坐标 final int mainpowercol [] = {5,206}; // Col 1和2 X坐标 String str; int len = 0;
/*----------------traction_braking---------------------*/
String traction_braking_header [] = {"TRACTION & BRAKING"};
String traction_braking_string [] = {"Active CAB","MSC Node","Throttle Zero","Constant Speed Mode","Pressure Auto Brake Line","TE/BE","Bogie 1","Bogie 2","Loco","Demand","Actual"};
String traction_braking_onoff [] = {"ON","OFF"};
String cab[] = {"1","2"}; // Active Cab 1 or 2
int [] traction_braking_int = new int [1]; // Run Time Variable MSC Node
double [] traction_braking_float = new double[15]; // Run Time Variable
int cab1or2 = 1; // Run Time Variable
int throttle_zero = 0; // Run Time Variable
int con_speed_mode = 1; // Run Time Variable
/*---------------------Temperatures------------------------*/
String tempetature_header [] = {"TEMPERATURES"};
String tempetature_string [] = {"I/P Power","Traction Converter","Transformer","SR1","SR2","TFP1","TFP2","Traction Motors","TM1","TM2","TM3","TM4","TM5","TM6"};
double [] tempetature_float = new double[15]; // Run Time Variable
/*---------------------Oil Pressure------------------------*/
String oil_pressure_header [] = {"OIL PRESSURE"};
// String oil_pressure_string [] = {“I / P Power”,“Traction Converter”,“Transformer”,“SR1”,“SR2”,“TFP1”,“TFP2”}; double [] oil_pressure_float = new double [10]; //运行时变量
/*---------------------config_switches------------------------*/
String configswitches_header [] = {"CONFIG SWITCHES"};
String configswitches_string [] = {"TE Limit"," Banking","Fail Mode","BG1 Out","BG2 Out","Fail Mode","Simulation","Configuration"};
int telimit=1; // Run Time Variable
int banking=0; // Run Time Variable
int failmode=1; // Run Time Variable
int bg1out=0; // Run Time Variable
int bg2out=1; // Run Time Variable
int simulation=0; // Run Time Variable
int configuration=1; // Run Time Variable
/*--------------------wheel_diameter-----------------------*/
String wheeldiameter_header[] = {"WHEEL DIAMETERS"};
String wheeldiameter_string[] = {"1","2","3","4","5","6","7","8","9","10","11","12", };
double [] wheeldiameter_float = new double [12];
/*---------------- kmearned_enery---------------------------*/
String kmenergy_header[] = {"KM EARNED AND ENERGY"};
String kmenergy_string [] = {"Km Earned","GWh","MWh","kWh","Energy Consumed","Energy Regenerated","% of Regenerated"};
double [] kmenergy_float = new double [15]; // Run Time Variable
String [] kmenergy_unit = new String [5]; // Run Time Variable
/*------------------software version------------------------*/
String s_v_header[] = { "Software Version" };
String s_v_string[] = {"LOCO TYPE","FLG 1","FLG 2","HBB 1","HBB 2","STB 1","STB 2","SLG 1","SLG 2"}; // for LOCO TYPE
String [] s_v_unit = new String [15];
double [] s_v_float = new double [10]; // Run Time Variable
}
/ 鼠标行为 / import java.awt。*; import java.awt.event。*;
import javax.swing。*; import java.io. ; import java.awt.image。; import java.util。; import java.lang.Thread。;
public class Mouseact扩展常量{
public Mouseact() {
// System.out.println("mouse event starts");
// TODO Auto-generated constructor stub
addMouseListener( new MouseAdapter() {
public void mouseClicked (MouseEvent me) {
System.out.println("mouse event starts");
//Graphics2D g2=(Graphics2D)g;
// Save the coordinates of the click lke this.
xpos = me.getX();
ypos = me.getY();
System.out.println("mouse event starts");
for (int j=0;j<10;j++){
System.out.println("mouse event starts");
}
// Check if the click was inside the rectangle area.
if(xpos > rect20xco && xpos < rect20xco+rect20width && ypos >rect20yco && ypos < rect20yco+rect20height)
{
rect20Clicked = true;
System.out.println("rect20="+rect20Clicked);
scrn++;
scrn=1;
repaint();
//int scr=1;
//return true;
}
else
{
rect20Clicked = false;
repaint();
// return false;
}
// }
//} // public void mouseClicked1(MouseEvent me){ if(xpos&gt; rect1xco&amp;&amp; xpos&lt; rect1xco + rect1width&amp;&amp; ypos&gt; rect1yco&amp;&amp; ypos&lt; rect1yco + rect1height)
{ rect1Clicked = true;
repaint();
}
else
rect1Clicked = false;
repaint();
// if it was not then rect1Clicked is false;
if(xpos > rect3xco && xpos < rect3xco+rect3width && ypos >rect3yco && ypos < rect3yco+rect3height)
rect3Clicked = true;
else
rect3Clicked = false;
repaint();
//show the results of the click
if(xpos > rect25xco && xpos < rect25xco+rect3width && ypos >rect25yco && ypos < rect25yco+rect25height)
rect25Clicked = true;
else
rect25Clicked = false;
repaint();
if(xpos > rect5xco && xpos < rect5xco+rect3width && ypos >rect5yco && ypos < rect5yco+rect5height)
rect5Clicked = true;
else
rect5Clicked = false;
repaint();
if(xpos > rect7xco && xpos < rect7xco+rect7width && ypos >rect7yco && ypos < rect7yco+rect7height)
rect7Clicked = true;
else
rect7Clicked = false;
repaint();
if(xpos > rect9xco && xpos < rect9xco+rect9width && ypos >rect9yco && ypos < rect9yco+rect9height)
rect9Clicked = true;
else
rect9Clicked = false;
repaint();
if(xpos > rect11xco && xpos < rect11xco+rect11width && ypos >rect11yco && ypos < rect11yco+rect11height)
rect11Clicked = true;
else
rect11Clicked = false;
repaint();
if(xpos > rect18xco && xpos < rect18xco+rect18width && ypos >rect18yco && ypos < rect18yco+rect18height)
rect18Clicked = true;
else
rect18Clicked = false;
repaint();
//show the results of the click
if(xpos > rect15xco && xpos < rect15xco+rect15width && ypos >rect15yco && ypos < rect15yco+rect15height)
rect15Clicked = true;
else
rect15Clicked = false;
repaint();
if(xpos > rect17xco && xpos < rect17xco+rect17width && ypos >rect17yco && ypos < rect17yco+rect17height)
rect17Clicked = true;
else
rect17Clicked = false;
repaint();
if(xpos > rect19xco && xpos < rect19xco+rect19width && ypos >rect19yco && ypos < rect19yco+rect19height)
rect19Clicked = true;
else
rect19Clicked = false;
repaint();
if(xpos > rect21xco && xpos < rect21xco+rect21width && ypos >rect21yco && ypos < rect21yco+rect21height)
rect21Clicked = true;
else
rect21Clicked = false;
repaint();
if(xpos > rect22xco && xpos < rect22xco+rect22width && ypos >rect22yco && ypos < rect22yco+rect22height)
rect22Clicked = true;
else
rect22Clicked = false;
repaint();
if(xpos > rect23xco && xpos < rect23xco+rect23width && ypos >rect23yco && ypos < rect23yco+rect23height)
rect23Clicked = true;
else
rect23Clicked = false;
repaint();
if(xpos > rect24xco && xpos < rect24xco+rect24width && ypos >rect24yco && ypos < rect24yco+rect24height)
rect24Clicked = true;
else
rect24Clicked = false;
repaint();
if(xpos > rect2xco && xpos < rect2xco+rect2width && ypos >rect2yco && ypos < rect2yco+rect2height)
rect2Clicked = true;
else
rect2Clicked = false;
repaint();
}
public void mousePressed (MouseEvent me) {}
// When it has been released
// not that a click also calls these Mouse-Pressed and Released.
// since they are empty nothing hapens here.
public void mouseReleased (MouseEvent me) {}
// This is executed when the mouse enters the applet. it will only
// be executed again when the mouse has left and then re-entered.
public void mouseEntered (MouseEvent me) {
// Will draw the "inside applet message"
mouseEntered = true;
repaint();
}
// When the Mouse leaves the applet.
public void mouseExited (MouseEvent me) {
// will draw the "outside applet message
mouseEntered = false;
repaint();
}
}
);
}
/*public void paint1(){
show();
}*/
public void paint(Graphics g) {
//super(paint);
Graphics2D g2=(Graphics2D)g;
g.setColor(Color.white);
g.drawRect(230,75,40,40);
mainpower MP= new mainpower();
if(rect20Clicked){
// int scr1=1;
MP.screens(g,g2);
MP.screenescape(g,g2);
//rect20Clicked=true ;
}
if(rect1Clicked ){
System.out.println(scrn);
MP.powercircuit(g,g2);
MP.escape(g,g2);
}
//}
else if(rect5Clicked){
MP.TractionMotor(g,g2);
MP.escape(g,g2);
}
else if(rect3Clicked){
MP.AuxiliaryConverter(g,g2);
MP.escape(g,g2);
}
else if(rect7Clicked){
MP.HarmonicHotel(g,g2);
MP.escape(g,g2);
}
else if(rect9Clicked){
MP.AuxiliaryMachines(g,g2);
MP.escape(g,g2);
}
else if(rect11Clicked){
MP.SubSystemIsolation(g,g2);
MP.escape(g,g2);
}
else if(rect18Clicked){
System.out.println ("LOCO ="+LOCO);
MP.software_version(g,g2,locono);
MP.escape(g,g2);
}
else if(rect15Clicked){
MP.BrakeSystem(g,g2);
MP.escape(g,g2);
}
else if(rect17Clicked){
MP.wheel_diameter(g,g2);
MP.escape(g,g2);
}
else if(rect19Clicked){
MP.kmearned_enery(g,g2);
MP.escape(g,g2);
}
else if(rect2Clicked){
MP.screens(g,g2);
MP.screenescape(g,g2);
}
else if(rect4Clicked){
MP.escape(g,g2);
}
else if(rect6Clicked){
MP.AuxiliaryMachines (g,g2);
MP.escape(g,g2);
}
else if(rect8Clicked){
MP.HarmonicHotel(g,g2);
MP.escape(g,g2);
}
else if(rect10Clicked){
MP.escape(g,g2);
}
else if(rect25Clicked){
repaint();
}
else if(rect14Clicked){
}
else if(rect16Clicked){
}
else if(rect18Clicked){
}
else if(rect21Clicked){
MP.traction_braking(g,g2);
MP.escape(g,g2);
}
else if(rect22Clicked){
MP.tempetature(g,g2);
MP.escape(g,g2);
}
else if(rect23Clicked){
MP.oil_pressure(g,g2);
MP.escape(g,g2);
}
else if(rect24Clicked){
MP.config_switches(g,g2);
MP.escape(g,g2);
}
}
}
答案 0 :(得分:0)
开发Swing是为了通常只有一个线程激发事件并更新UI。但也有例外。我没有完全得到你的要求,这里有关于添加mouse listener的文档,这里有关于threading in Swing的文档。
在鼠标单击时,如果需要,可以生成一个线程。但要小心,线程可能变得很重,而且速度很快。