1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Delicious77 [7]
3 years ago
8

This assignment is designed to test your understanding of graphical user interface components and Event Driven programming in Ja

va using Swing. You will write and attach event handlers to an existing graphical user interface (GUI) for an application that displays and manipulates a Color Model.
Engineering
1 answer:
lys-0071 [83]3 years ago
7 0

Answer:

Java program is given below

Explanation:

JavaPadGUI.java

package javapad.gui;

import java.awt.BorderLayout;

import java.awt.Container;

import java.awt.Dimension;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import java.io.File;

import java.io.FileNotFoundException;

import java.io.PrintWriter;

import java.util.Scanner;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

public class JavaPadGUI extends JFrame implements ActionListener{

  //constants

  private static final String TITLE = "Macrosoft JavaPad XP";

  private static final String SLOGAN = "Macrosoft: Resistance is futile";

 

  //button names

  private static final String NEW = "New";

  private static final String LOAD = "Load";

  private static final String SAVE = "Save";

  private static final String QUIT = "Quit";

 

  private static final String FILENAME = "hardcode.txt";

  //messages

 

  private static final String QUIT_MSG = "Quitting, Save?";

  private static final String LOAD_ERR = "Could not access file " + FILENAME;

 

 

  //fields

  private JTextArea txtContent;

  private JButton butNew, butLoad, butSave, butQuit;

 

  public JavaPadGUI()

  {

      super(TITLE);

      createUI();

      setSize(new Dimension(400, 300));

      setDefaultCloseOperation(EXIT_ON_CLOSE);

         

  }

 

  private void createUI()

  {

      Container c = getContentPane();

      c.setLayout(new BorderLayout(30,30));

     

      //create the buttons panel

      JPanel butPanel = new JPanel();

      butPanel.add(butNew = new JButton(NEW));

      butPanel.add(butLoad = new JButton(LOAD));

      butPanel.add(butSave = new JButton(SAVE));

      butPanel.add(butQuit = new JButton(QUIT));

     

      //set command names for the buttons, these will be when button is clicked

      butNew.setActionCommand(NEW);

      butLoad.setActionCommand(LOAD);

      butSave.setActionCommand(SAVE);

      butQuit.setActionCommand(QUIT);

     

      JPanel sloganPanel = new JPanel();

      sloganPanel.add(new JLabel(SLOGAN));

     

      //create textarea with scrollbar

      txtContent = new JTextArea(15, 25);

      txtContent.setLineWrap(true);

         

      JScrollPane scroll = new JScrollPane(txtContent);

     

      //now add all components

      c.add(butPanel, BorderLayout.NORTH);

      c.add(scroll, BorderLayout.CENTER);

      c.add(sloganPanel, BorderLayout.SOUTH);

     

     

      //set the actionlistner to buttons to handle button click event

      butNew.addActionListener(this);

      butLoad.addActionListener(this);

      butSave.addActionListener(this);

      butQuit.addActionListener(this);

     

  }

  public void actionPerformed(ActionEvent e)

  {

      String cmd = e.getActionCommand();

      if(cmd.equals(NEW))

          txtContent.setText("");

      else if (cmd.equals(LOAD))

          load();

      else if(cmd.equals(SAVE))

          save();

      else if (cmd.equals(QUIT))

          quit();

  }

  private void quit()

  {

      int option = JOptionPane.showConfirmDialog(this, QUIT_MSG);

      if(option == JOptionPane.YES_OPTION)

      {

          save();

      }

     

      System.exit(0);

  }

 

  private void save()

  {

      try {

          PrintWriter w = new PrintWriter(new File(FILENAME));

          w.write(txtContent.getText());

          w.close();

      } catch (FileNotFoundException e) {

          JOptionPane.showMessageDialog(this,"I/O Error", LOAD_ERR, JOptionPane.ERROR_MESSAGE);

      }

             

  }

  private void load()

  {

      try {

          Scanner s = new Scanner(new File(FILENAME));

          String str = "";

          while(s.hasNextLine())

              str += s.nextLine();

          txtContent.setText(str);

          s.close();

      } catch (FileNotFoundException e) {

          JOptionPane.showMessageDialog(this, LOAD_ERR, "I/O Error",JOptionPane.ERROR_MESSAGE);

      }

     

  }

}

RunJavaPad.java

package javapad;

import javapad.gui.JavaPadGUI;

public class RunJavaPad {

  public static void main(String[] args) {

      JavaPadGUI gui = new JavaPadGUI();

      gui.setVisible(true);

  }

}

You might be interested in
An electrochemical cell is composed of pure nickel and pure iron electrodes immersed in solutions of their divalent ions. If the
xenn [34]

Answer:C  0.12 V

Explanation:

Given

Concentration of Fe^{2+} M_1=0.40 M

Concentration of Ni^{2+} M_2=0.002 M

Standard Potential for Ni and Fe are V_2=-0.25 V  and V_1=-0.44 V

\Delta V=V_2-V_1-\frac{0.0592}{2}\log (\frac{M_1}{M_2})

\Delta V=-0.25-(-0.44)-\frac{0.0592}{2}\log (\frac{0.4}{0.002})

\Delta V=0.12\ V

7 0
3 years ago
What is the probability that Tina will NOT wear a white t-shirt on the first day of her trip?
katrin2010 [14]

Answer:

4/5

Explanation:

She is not wearing white t-shirt on the first day so she is wearing the other 4 t-shirt

4 0
3 years ago
A transmission line with an imperfect dielectric is connected to an ideal time-invariant voltage generator. The other end of the
kari74 [83]

Answer and Explanation:

O decreases linearly with the distance from the generator

4 0
3 years ago
What is the least count of screw gauge?<br> (a) 0.01 cm<br> (b) 0.001 cm<br> (c) 0.1 cm<br> (d) 1 mm
Nonamiya [84]
Its 0.001

0.01 x100 = 1mm
0.001x100=0.1mm
0.1=10mm
1m
3 0
3 years ago
Water is being heated in a closed pan on top of a range whilebeing stirred by a paddle wheel. During the process 30kJ of heat is
My name is Ann [436]

Answer:

38 kJ

Explanation:

The solution is obtained using the energy balance:  

ΔE=E_in-E_out

U_2-U_1=Q_in+W_in-Q_out

U_2=U_1+Q_in+W_in-Q_out

      =38 kJ

4 0
3 years ago
Other questions:
  • Technician A says that when the malfunction indicator light or service engine light is on you should retrieve the diagnostic tro
    10·1 answer
  • A banked highway is designed for traffic moving at v = 88 km/h. The radius of the curve r = 314 m. show answer No Attempt 50% Pa
    5·2 answers
  • A thick steel slab ( 7800 kg/m3, 480 J/kg·K, 50 W/m·K) is initially at 300°C and is cooled by water jets impinging on one of its
    14·2 answers
  • 5 lb of propane is contained in a closed, rigid tank initially at 80 lbf/in^2, 110 degrees Fahrenheit. Heat transfer occurs unti
    5·1 answer
  • ________ is the amount of time it takes a person’s eyes to regain focus after seeing glare.
    8·2 answers
  • A bolt is tightened, subjecting its shank to a tensile stress of 80 kpsi and a torsional shear stress of 50 kpsi at a critical p
    7·1 answer
  • An aggregate blend is composed of 65% coarse aggregate by weight (Sp. Cr. 2.635), 36% fine aggregate (Sp. Gr. 2.710), and 5% fil
    5·1 answer
  • Implement a quick sort algorithm that will accept an integer array of size n and in random order. Develop or research three diff
    13·1 answer
  • A restaurant and dairy are participating in a community digester pilot program within the UMD Industrial Park. The following was
    9·1 answer
  • Select the correct answer. Which of the following devices is a simple machine? A.
    9·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!