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 JPanelExplanation / 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"); } }