Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Code: app.java public class app { public static void main(String args[]) { myJFr

ID: 3672674 • Letter: C

Question

Code:

app.java

public class app
{
public static void main(String args[])
{
    myJFrame mjf = new myJFrame();
}
}
myJFrame.java

import java.awt.*;
import javax.swing.*;

public class myJFrame extends JFrame
{
   public myJFrame ()
   {
       super ("My First Frame");   

      myJPanel mjp = new myJPanel();
  
       getContentPane().add(mjp,"Center");    

       setDefaultCloseOperation(EXIT_ON_CLOSE);
       setSize (640, 480);
       setVisible(true);
   }

}

myJPanel.java

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class myJPanel extends JPanel
{
   public myJPanel()
   {
       super();
       setBackground(Color.gray);
      
       setLayout(new BorderLayout());
       myJPanel1 p1 = new myJPanel1();
       myJPanel2 p2 = new myJPanel2();

       add(p1,"North");
       add(p2,"Center");
   }  
}

myJPanel1.java

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class myJPanel1 extends JPanel
{
   JButton b1;
   public myJPanel1()
   {
       super();
       setBackground(Color.yellow);
       b1 = new JButton("student info will be here later ...");
       add(b1);
       }     
}

myJPanel2.java

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class myJPanel2 extends JPanel
{
   JButton b2;
   public myJPanel2()
   {
       super();
       setBackground(Color.pink);
       b2 = new JButton("whats Up will be shown here" );
       add(b2);
    }   
}

student.java

import java.awt.*;
import javax.swing.*;

public class student
{
       String firstName;
       String lastName;
       int age;

       public student(String a, String b, int x)
       {  
           super();
           firstName = a;
           lastName = b;
           age = x;
          
       }
      
       String getInfo()
       {
           return "NAME = "+firstName+ " "+lastName+" "+"Age = "+age;
       }
       String whatsUp()
       {
           double r = Math.random();
           int myNumber = (int) (r * 3f); //comment: a random number between 0 and 2
           String answer = "I don't know";
           if(myNumber == 0) answer = "searching the web";
           if(myNumber == 1) answer = "doing Java";
           if(myNumber == 2) answer = "Listening to endless lecture";
           return answer;
       }

}

Basically tweek the code so that it will display the above image, Thanks

There only one version of a student, which you will need to create in myJPanel.java. Student information is shown in the upper button (in myJPanel) you are required to: do everything the in the main panel, myJPanel.java No changes in myJPanel1.java No changes in myJPanel2.java Therefore A lot of changes in my JPanel

Explanation / Answer

import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; public class myJPanel extends JPanel { public myJPanel() { super(); setBackground(Color.gray); setLayout(new BorderLayout()); myJPanel1 p1 = new myJPanel1(); myJPanel2 p2 = new myJPanel2(); student newStudent = new student("John", "Cena", 21); p1.b1.setText(newStudent.getInfo()); p1.b1.addActionListener(new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { p2.b2.setText(newStudent.whatsUp()); } }); add(p1,"North"); add(p2,"Center"); } }