Latest Tutorials| Questions and Answers|Ask Questions?|Site Map



Home Answers Viewqa Swing-AWT how to call a frame having threading concept
Login         

View Questions and Answers by Category

Advertisements


 
Have Programming Question? Ask it here!
 
 
 


Sumeeta Mudhaliyar
how to call a frame having threading concept
0 Answer(s)      3 years and 11 months ago
Posted in : Swing AWT


i hav a frame having buttton on it .on click event of the button ,i want to call another frame which implements threading concept. i tried it simply by calling constructor of that frame ,frame is displaying but no other content. that frame contains no of graphics objects moving on screen.

calling frame code .. import java.awt.*; import java.awt.image.*; import javax.swing.*; import java.awt.event.*; import javax.swing.border.*; //import javax.swing.border.*; import java.sql.*;

public class frame8 extends JPanel implements ActionListener { public static final int TILED = 0;
public static final int SCALED = 1; public static final int ACTUAL = 2; private BufferedImage image; private int style; private float alignmentX = 0.5f; private float alignmentY = 0.5f; JButton b; JRadioButton r1,r2,r3; ButtonGroup gp; JLabel l1;

public frame8(BufferedImage image)
{
     this(image,TILED);
}


protected void paintComponent(Graphics g)
{
    super.paintComponent(g);
    g.drawImage( image, 0, 0,null );
}

public frame8(BufferedImage image, int style)
{
    this.image = image;
    this.style = style;
    setSize(300,400);
    setLayout( new BorderLayout() );
}   




public  frame8() throws Exception
{
    BufferedImage image = javax.imageio.ImageIO.read( new java.io.File("an.jpg"));
    frame8 north = new frame8(image);
    frame8 center = new frame8(image);
    frame8 south = new frame8(image);
    center.setLayout(new GridLayout(4,1));
    //center.setBackground(Color.GREEN);
    south.setLayout(new FlowLayout());








    l1=new JLabel("SELECT DIFFICULTY LEVEL",JLabel.CENTER);
    l1.setFont(new Font("monotype Corsiva",Font.BOLD,25));
    l1.setForeground(Color.BLUE);

    gp=new ButtonGroup();
    r1=new JRadioButton("EASY");
    r1.setForeground(Color.blue);

    r1.setBackground(Color.GREEN);
    r2=new JRadioButton("MEDIUM");
    r2.setForeground(Color.blue);
    r2.setBackground(Color.GREEN);
    r3=new JRadioButton("HARD");
    r3.setForeground(Color.blue);
    r3.setBackground(Color.GREEN);
    r1.setOpaque(false);
    r2.setOpaque(false);
    r3.setOpaque(false);
    gp.add(r1); gp.add(r2); gp.add(r3);
    b=new JButton(new ImageIcon("bg2.jpg"));
    b.setOpaque(false);
    b.addActionListener(this);
    b.setFont(new Font("monotype Corsiva",Font.BOLD,20));
    b.setToolTipText("click to select given option and go ahead");
    //b[1].setToolTipText("click to go back");
//  b.setBorder(new LineBorder(Color.GREEN));
        b.setBackground(Color.GREEN);
        b.setForeground(Color.WHITE);
        south.add(b);


    center.add(l1); center.add(r1);center.add(r2); center.add(r3);

    JFrame frame = new JFrame();

    b.setEnabled(true);
    r1.setEnabled(true);
    r2.setEnabled(true);
    r3.setEnabled(true);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(400,400);
    frame.setLocation(450,290);
    frame.getContentPane().add(center,BorderLayout.CENTER);
    frame.getContentPane().add(south,BorderLayout.SOUTH);

    //frame.pack();

    frame.setTitle("SELECTION FORM");

    frame.setVisible(true);
    frame.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));

}

public void actionPerformed(ActionEvent ae)
{

    JButton bb=(JButton)ae.getSource();
    b.setEnabled(false);
    r1.setEnabled(false);
    r2.setEnabled(false);
    r3.setEnabled(false);
    try
    {
        if(bb==b)
        {
            if(r1.isSelected())
            {
            System.out.println("enterd");
                //ImagePanel1 i=new ImagePanel1();
                //i.b[0].setEnabled(false);
                //i.b[1].setEnabled(false);


                new gameFrame();

                System.out.println("started");
            }
            else if(r2.isSelected())
            {
                //med m=new med();
            }
            else if(r3.isSelected())
            {
                System.out.println("hard");
            }
            else
            {
                    JOptionPane.showMessageDialog(null,"1st SELECT SOME CHOICE","ERROR",JOptionPane.ERROR_MESSAGE,new ImageIcon("A04.gif")); 
                    b.setEnabled(true);
                    r1.setEnabled(true);
                    r2.setEnabled(true);
                    r3.setEnabled(true);
            }
        }
    }catch(Exception e)
    {
        e.printStackTrace();
    }   
}

public static void main(String [] args)throws Exception
{
    new frame8();



}

}

called frame code... import javax.swing.*; import javax.imageio.*; import java.awt.*;
import java.io.*; import java.awt.image.*; import java.awt.image.BufferedImage; import java.util.*; import java.math.*;
import javax.swing.border.*; import java.awt.event.*; import javax.swing.Timer; public class TestingArea {

int counter=0;
     static  File file1,file2,file3,file5;
 static Vector <Image> list = new Vector<Image>(); 
 static int X = 0; 
 static int Y = 50;
static boolean flag=false; 
Timer clock;
 public TestingArea()
 {

file1= new File("easy1.jpg"); 
file2= new File("easy1.jpg"); 
file3= new File("easy1.jpg"); 
file5=new File("easy1.jpg");
    // TODO, add your application code 
    gameFrame gf = new gameFrame(); 

Thread ob=new Thread(gf);
    ob.start(); 
    paintIt obj = new paintIt(); 
    gf.add(obj); 
flag=true;
    while (flag)
{ 
        X += 1; 
        Y +=2;
   if(X>=200)
   {

            X=0;
    Y=50; 
        } 



        Graphics g; 
        gf.repaint(); 
        try{ 
              //do what you want to do before sleeping 
              Thread.currentThread().sleep(10);//sleep for 1000 ms 
              //do what you want to do after sleeptig 
           } catch(Exception ie)
    { 
            //If this thread was intrrupted by nother thread  
            }
    clock=new Timer(1000, new ActionListener()
         {  

                    public void actionPerformed(ActionEvent e) 
            {  

                     counter++; 
            if(counter==1000)
            {
                flag=false;
                clock.stop();
                gameFrame.time.setVisible(false);
                JOptionPane.showMessageDialog(null,"SCORE: "+Integer.toString(paintIt.sc),"HI",JOptionPane.PLAIN_MESSAGE,new ImageIcon("A04.gif")); 
                try
                {
                    new ImagePanel1();
                }catch(Exception e3)
                {}

            } 

            gameFrame.time.setText(Integer.toString(counter));


            }


                } );  

             clock.start();  
    }//while 
} 
public static void main(String a[])
{
    new TestingArea();

}

}

class gameFrame extends JFrame implements Runnable//,ActionListener { int mx,my; //int bx1,by1,bx2,by2,bx3,by3; JPanel north = new JPanel(); JPanel east = new JPanel(); static JLabel time,hits,score,clicks; static JButton quit; int counter=1000; paintIt p = new paintIt(); public void run() { System.out.println("Inside"); paintIt p = new paintIt();

} 
public gameFrame()

{

System.out.println("KK2");

// paintIt p = new paintIt(); 

setLayout(new BorderLayout());

time=new JLabel("TIME:");
time.setFont(new Font("",Font.ITALIC,20));
time.setForeground(Color.WHITE);    
hits=new JLabel("HITS:");
hits.setFont(new Font("",Font.ITALIC,20));
hits.setForeground(Color.WHITE);
clicks=new JLabel("SHOTS:");
clicks.setFont(new Font("",Font.ITALIC,20));
clicks.setForeground(Color.WHITE);
score=new JLabel("SCORE:");
score.setFont(new Font("",Font.ITALIC,20));
score.setForeground(Color.WHITE);
east.setBackground(Color.RED);
p.setBackground(Color.BLACK);

east.setLayout(new GridLayout(1,5));
east.add(time); east.add(score); east.add(hits);

quit=new JButton("QUIT");
east.add(clicks); east.add(quit);   
setLayout(new BorderLayout());
quit.setBackground(Color.RED);
quit.setForeground(Color.white);
quit.setFont(new Font("monotype Corsiva",Font.ITALIC,25));
quit.setBorder(new LineBorder(Color.RED));
//quit.addActionListener(this);
quit.addActionListener(new ActionListener()
{

        public void actionPerformed(ActionEvent ae)
        {
            JButton b=(JButton)ae.getSource();
            if(b==quit)
                TestingArea.flag=false;
                east.setVisible(false);
                try
                {
                    new ImagePanel1();//System.exit(0);
                }catch(Exception e2){e2.printStackTrace();}
        }
    });
getContentPane().add(east,BorderLayout.SOUTH);
getContentPane().add(p,BorderLayout.CENTER);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
setLocation(150,5);
    setSize(900,700); 
    setTitle("Image test"); 
    setVisible(true);

System.out.println("KK");

}
/*
public void actionPerformed(ActionEvent ae)
{
    JButton b=(JButton)ae.getSource();
    if(b==quit)
        ImagePanel1 i=new ImagePanel1();    
}*/

}

class paintIt extends JPanel implements Runnable { BufferedImage pic,pic2,pic3; public int xmin1,ymin1,xmax1,ymax1; public int xmin2,ymin2,xmax2,ymax2; public int xmin3,ymin3,xmax3,ymax3; public int xmin4,ymin4,xmax4,ymax4; public int xmin5,ymin5,xmax5,ymax5; public int xmin6,ymin6,xmax6,ymax6; public int xmin7,ymin7,xmax7,ymax7; public int xmin8,ymin8,xmax8,ymax8; public int xmin9,ymin9,xmax9,ymax9; public int w1,h1,bx2,by2; public int wx,hy; int mx,my; public float avg=0; static int h=0,sc=0,c=0; Graphics g;

public void paintComponent(Graphics g) 
{ 
    super.paintComponent(g); 
try
{

//System.out.println("KK3");
if (TestingArea.list.capacity()> 0 ) { pic = ImageIO.read(TestingArea.file5); pic2=ImageIO.read(TestingArea.file2); pic3=ImageIO.read(TestingArea.file3); w1=pic.getWidth(this); h1=pic.getHeight(this);

                TestingArea.list.add(pic); 
        TestingArea.list.add(pic2); 
        TestingArea.list.add(pic3); 
        } 


        int a=TestingArea.X+(int)(Math.random()*50);
    int b=70;//TestingArea.Y;//+(int)(Math.random()*30);
    xmin1=a;
    ymin1=b;


    xmin2=TestingArea.X+700;
    ymin2=(TestingArea.Y+100)+(int)(Math.random()*90);


    xmin3=TestingArea.X+400;//+(1+(int)(Math.random()*60));
    ymin3=TestingArea.Y+300;


    xmin4=TestingArea.X-90;
    ymin4=(TestingArea.Y);//+200)+(50+(int)(Math.random()*200));

    xmin5=TestingArea.X+250;
    ymin5=(TestingArea.Y+300)+(int)(Math.random()*90);

    xmin6=TestingArea.X+200;
    ymin6=400;//(TestingArea.Y+200)+(int)(Math.random()*100);       

    xmin7=TestingArea.X+500;
    ymin7=10;//(TestingArea.Y+300)+(int)(Math.random()*90);

    xmin8=TestingArea.X+250;
    ymin8=(TestingArea.Y+50)+(int)(Math.random()*90);

    xmin9=20;//TestingArea.X+500;
    ymin9=(TestingArea.Y+30)+(int)(Math.random()*90);

         g.drawImage(pic,xmin1,ymin1,null); 
     g.drawImage(pic2,xmin2,ymin2,null);
     g.drawImage(pic3,xmin3,ymin3,null);
     g.drawImage(pic3,xmin4,ymin4,null);
     g.drawImage(pic3,xmin5,ymin5,null);
     g.drawImage(pic3,xmin6,ymin6,null);
     g.drawImage(pic3,xmin7,ymin7,null);
     g.drawImage(pic3,xmin8,ymin8,null);
     g.drawImage(pic3,xmin9,ymin9,null);


    }
catch (Exception e)
{ 
        System.out.println("DOESNT WORK!"); 
        e.printStackTrace(); 
    } 
} 
    public void run()
{ 
    } 

paintIt()
{
//System.out.println("KK33");   
    //Graphics g;
    /*
    Timer clock=new Timer(1000, new ActionListener()
         {  

                    public void actionPerformed(ActionEvent e) 
            {  

                     counter--;  

            gameFrame.time.setText(Integer.toString(counter));

            //System.out.print("\n not"+counter );
                    //update JTextField  
            }


                } );  

             clock.start(); 

    if(counter==0)
        System.exit(0);*/
    addMouseListener(new MouseAdapter()
    {  
        public void mouseClicked(MouseEvent me)
        {
            int f1=0,f2=0; //for pic1
            int f3=0,f4=0;  //for pic2
            int f5=0,f6=0;
            int f7=0,f8=0;
            int f9=0,f0=0; //pic5
            int fl1=0,fl2=0,fl3=0,fl4=0,fl5=0,fl6=0,fl7=0,fl8=0;

            mx=me.getX();
            my=me.getY();
            System.out.println("****************************************");
            System.out.println("clicked==x"+mx+"        y=="+my);
            System.out.println("image x=="+xmin1+"    y=="+ymin1+"\n\n");
            System.out.println(" image width=="+w1+"      height=="+h1+"\n\n");


            xmax1=xmin1+w1;
            ymax1=ymin1+h1;

            xmax2=xmin2+w1;
            ymax2=ymin2+h1;

            xmax3=xmin3+w1;
            ymax3=ymin3+h1;

            xmax4=xmin4+w1;
            ymax4=ymin4+h1;

            xmax5=xmin5+w1;
            ymax5=ymin5+h1;

            xmax6=xmin6+w1;
            ymax6=ymin6+h1;

            xmax7=xmin7+w1;
            ymax7=ymin7+h1;


            xmax8=xmin8+w1;
            ymax8=ymin8+h1;

            xmax9=xmin9+w1;
            ymax9=ymin9+h1;

            //for pic1  
            if((xmin1<mx && mx <xmax1) && (ymin1<my && my<ymax1))
            {
                System.out.println("within");
                f1=1;
                sc=sc+20;

            }
            else if(((xmin1== mx || xmax1==mx) && (ymin1<my && my<ymax1)) || ((xmin1<mx && mx <xmax1) && (ymin1== my || ymax1==my)))
            {
                System.out.println("on boundry");
                f2=1;
                sc=sc+20;
            }


    //END OF PIC    



    //start for pic 2
            else if((xmin2<mx && mx <xmax2) && (ymin2<my && my<ymax2))
            {
                System.out.println("within2");
                f3=1;
                sc=sc+20;
            }
            else if(((xmin2== mx || xmax2==mx) && (ymin2<my && my<ymax2)) || ((xmin2<mx && mx <xmax2) && (ymin2== my || ymax2==my)))
            {
                System.out.println("on boundry2");
                f4=1;
                sc=sc+20;
            }

    //end of pic2
    // start of pic3
            else if((xmin3<mx && mx <xmax3) && (ymin3<my && my<ymax3))
            {
                System.out.println("within3");
                f5=1;
                sc=sc+20;
            }
            else if(((xmin3== mx || xmax3==mx) && (ymin3<=my && my<=ymax3)) || ((xmin3<=mx && mx<=xmax3) && (ymin3== my || ymax3==my)))
            {
                System.out.println("on boundry3");
                f6=1;
                sc=sc+20;
            }



    //end of pic 3
    //start of pic4

            else if((xmin4<mx && mx <xmax4) && (ymin4<my && my<ymax4))
            {
                System.out.println("within4");
                f7=1;
                sc=sc+20;
            }
            else if(((xmin4== mx || xmax4==mx) && (ymin4<my && my<ymax4)) || ((xmin4<mx && mx <xmax4) && (ymin4== my || ymax4==my)))
            {
                System.out.println("on boundry4");
                f8=1;
                sc=sc+20;
            }

//end of pic 4
    //start of pic5

            else if((xmin5<mx && mx <xmax5) && (ymin5<my && my<ymax5))
            {
                System.out.println("within5");
                f9=1;
                sc=sc+20;
            }
            else if(((xmin5== mx || xmax5==mx) && (ymin5<my && my<ymax5)) || ((xmin5<mx && mx <xmax5) && (ymin5== my || ymax5==my)))
            {
                System.out.println("on boundry5");
                f0=1;
                sc=sc+20;
            }


            //END OF PIC5   



    //start for pic 6
            else if((xmin6<mx && mx <xmax6) && (ymin6<my && my<ymax6))
            {
                System.out.println("within6");
                fl1=1;
                sc=sc+20;
            }
            else if(((xmin6== mx || xmax6==mx) && (ymin6<my && my<ymax6)) || ((xmin6<mx && mx <xmax6) && (ymin6== my || ymax6==my)))
            {
                System.out.println("on boundry2");
                fl2=1;
                sc=sc+20;
            }

    //end of pic6
    // start of pic7
            else if((xmin7<mx && mx <xmax7) && (ymin7<my && my<ymax7))
            {
                System.out.println("within7");
                fl3=1;
                sc=sc+20;
            }
            else if(((xmin7== mx || xmax7==mx) && (ymin7<=my && my<=ymax7)) || ((xmin7<=mx && mx<=xmax7) && (ymin7== my || ymax7==my)))
            {
                System.out.println("on boundry7");
                fl4=1;
                sc=sc+20;
            }

//END OF PIC

    //start for pic 8
            else if((xmin8<mx && mx <xmax8) && (ymin8<my && my<ymax8))
            {
                System.out.println("within8");
                fl5=1;
                sc=sc+20;
            }
            else if(((xmin8== mx || xmax8==mx) && (ymin8<my && my<ymax8)) || ((xmin8<mx && mx <xmax8) && (ymin8== my || ymax8==my)))
            {
                System.out.println("on boundry8");
                fl6=1;
                sc=sc+20;
            }

    //end of pic8
    // start of pic9
            else if((xmin9<mx && mx <xmax9) && (ymin9<my && my<ymax9))
            {
                System.out.println("within9");
                fl7=1;
                sc=sc+20;
            }
            else if(((xmin9== mx || xmax9==mx) && (ymin9<=my && my<=ymax9)) || ((xmin9<=mx && mx<=xmax9) && (ymin9== my || ymax9==my)))
            {
                System.out.println("on boundry9");
                fl8=1;
                sc=sc+20;
            }

///////////////////////////////////////////////////////////////////////////////

            System.out.println("xmax=="+xmax1+"     wy=="+ymax1+"\n\n");
            if(f1==1 || f2==1 || f3==1 || f4==1 || f5==1 || f6==1 || f7==1 || f8==1 || f9==1 || f0==1 || fl1==1|| fl2==1|| fl3==1 || fl4==1 || fl5==1 || fl6==1 || fl7==1 || fl8==1) 
            {

                ++h;++c;

                gameFrame.hits.setText("HITS  :"+Integer.toString(h));

                gameFrame.score.setText("SCORE  :"+Integer.toString(sc));                   
                gameFrame.clicks.setText("SHOTS  :"+Integer.toString(c));
                System.out.println("yes"+sc);
            }
            else 
                {
                    ++c;
                    gameFrame.clicks.setText("SHOTS  :"+Integer.toString(c));
                    System.out.println("no");
                }


        }


        });



}

}


Advertisement
View Answers

Related Tutorials/Questions & Answers:
how to call a frame having threading concept
how to call a frame having threading concept   i hav a frame having buttton on it .on click event of the button ,i want to call another frame which implements threading concept. i tried it simply by calling constructor
how to call a frame having threading concept
how to call a frame having threading concept   i hav a frame having buttton on it .on click event of the button ,i want to call another frame which implements threading concept. i tried it simply by calling constructor
Advertisements
call frame - Java Beginners
call frame   dear java, I want to ask something about call frame to another frame and back to first frame. I have FrameA and FrameB. In frameA... String PAINT_ICON = "paint_icon"; //true if the next frame created should
call frame again - Java Beginners
call frame again  d, thank's for your answer, but i can't combine... can run ,first i have one frameA in this frame have one jTextfield1,one jbutton1,second i have FrameB in this frame have one Jtextfield1 and jbutton1. I can
Threading
Threading       Introduction:   Threading concept is very important in Java Programming language... and code. By using threading we can increase the speed of any application. Parallel
Threading
Threading   striker thread problem solution
how to create frame in swings
how to create frame in swings  how to create frame in swings
How to call servlet in JSP?
How to call servlet in JSP?  How to call servlet in JSP
how to call static method
how to call static method  class A { //some code } class B extends class A { static method() } class C { } //how to access static method() from B to C
how to call static method
how to call static method  class A { //some code } class B extends class A { static method() } class C { } //how to access static method() from B to C
how to call static method
how to call static method  class A { //some code } class B extends class A { static method() } class C { } //how to access static method() from B to C
how to call static method
how to call static method  class A { //some code } class B extends A { static method() } class C { } //how to access static method() from B to C
how to call static method
how to call static method  class A { //some code } class B extends A { static method() } class C { } //how to access static method() from B to C
how to call static method
how to call static method  class A { //some code } class B extends A { static method() } class C { } //how to access static method() from B to C
How to center a frame
How to center a frame In this tutorial, you will learn how to center a frame on screen. A Frame is a top-level window having a title and a border and its... and minimize also. Here we are going to center the frame on the screen
how call ireports in jsp
how call ireports in jsp  please send me code any one for calling ireports in servlet-jsp program i am trying to call the ireports in servlet and jsp error is occurred exception: javax.servlet.ServletException
How to make frame of the picture, make frame of the picture, frame of the picture
How to make frame of the picture       This is about a frame example that has been made by some steps, I have mention here all the steps to make this effect. Take picture: First
how to go from one frame to another frame in swings - Java Beginners
how to go from one frame to another frame in swings  Hi, My task is to go from one frame to another.......... let us think that iam having two buttons on a frame........button names are ok and next........ when iam clicking
how to call jsp from flex
how to call jsp from flex  hi, i want to know that how can i call a FLEX from JSP. . A good Example will be appreciated
how to print JInternal frame component ?
how to print JInternal frame component ?  hello sir, i devalop a swing application .but problem is that how display report & print it. some data prefech from database & keep to jtable but how it is print with table
how to add panel inside frame?
how to add panel inside frame?  I prepared a Frame with two labels and text fields and one button.when ever user clicks on the button two text fields should be appear(those text fields should be added to the panel) .I want
how to distinguish engines having same code - Struts
how to distinguish engines having same code  hi we are using struts as UI in application and from UI a file is uploaded and inserted into database and it is kept in central repository.user can change the file and again upload
how to call jsp from flex
how to call jsp from flex  Plz help me out to get JSP from FLEX.... I need your help.... Thanks for future
how to set a image in frame? - Swing AWT
how to set a image in frame?  how to set a image in frame using swing
How to Synchronize the Entire collection Frame Work?
How to Synchronize the Entire collection Frame Work?  How to Synchronize the Entire collection Frame Work?   I Think We must implement the Through Sub Interfaces of Collection Frame work
how can i close a frame. - Java Beginners
how can i close a frame.  Hi, My question is how can we close a frame when an action is taken......For example let us think that we have a frame and in that table is displayed and one button is added to that frame
how display jsp frame - Java Beginners
how display jsp frame  Hi all, I am creating two jsp in frame... in another frame,you have to use target attribute of tag in your footer.jsp.... to open the link on this jsp frame.It is having no code. Jsp Frameset
frame
frame  how to creat a frame in java   Hi Friend, Try the following code: import java.awt.*; import javax.swing.*; import java.awt.event.*; class RetrieveDataFromTextFields{ public static void main(String[] args
How do you call a constructor for a parent class?
How do you call a constructor for a parent class?  How do you call a constructor for a parent class
how to call javascript function from flex
how to call javascript function from flex  how to call javascript function from flex
How to call java method on Button click in jsp?
How to call java method on Button click in jsp?  How to call java method on Button click in jsp
Advertisements
 

 

 

DMCA.com