PLEASE HELP ME !! IT IS Due Tonight ;(! How can I make the add button and remove
ID: 3794735 • Letter: P
Question
PLEASE HELP ME !!
IT IS Due Tonight ;(!
How can I make the add button and remove button initialize button work?
For the buttons should add and remove to the JTextArea and JList.
when you write you use the JTextField to add or remove what you write in the JTextArea and JList.
For the initialize, the button should initialize the text once.
Ihave three class.
this what I code so far:
import javax.swing.JFrame;
import javax.swing.JTextField;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.Image;
import javax.swing.JButton;
import javax.swing.JColorChooser;
import javax.swing.JFileChooser;
import java.awt.Insets;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.SwingConstants;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.JMenuItem;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.ImageIcon;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Scanner;
import java.util.logging.Handler;
import java.awt.event.ActionEvent;
import java.awt.GridLayout;
import javax.swing.JLabel;
import javax.swing.JPanel;
import java.awt.Component;
import javax.swing.ButtonGroup;
import javax.swing.DropMode;
import javax.swing.border.EtchedBorder;
import javax.swing.border.LineBorder;
import javax.swing.border.MatteBorder;
import javax.swing.border.TitledBorder;
import javax.swing.UIManager;
import java.awt.FlowLayout;
public class Schedule extends JFrame implements ListSelectionListener, ActionListener {
private ScheduleTextArea STArea;
private ScheduleButton SButton;
private JRadioButtonMenuItem BRed;
private JRadioButtonMenuItem BBlue;
private JRadioButtonMenuItem BGreen;
private JRadioButtonMenuItem BYellow;
private JPanel cntrolPanel;
public static void main(String[] args){
Schedule S= new Schedule();
S.setVisible(true);
}
public Schedule() {
setTitle("Student schedule");
setSize(800,700);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setLayout(new GridLayout(0, 1, 0, 0));
createMenuBar();
cntrolPanel= new JPanel();
cntrolPanel.setBorder(new MatteBorder(3, 3, 3, 3, (Color) Color.GRAY));
getContentPane().add(cntrolPanel);
cntrolPanel.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));
STArea = new ScheduleTextArea();
STArea.setBorder(new MatteBorder(1, 1, 1, 1, (Color) new Color(128, 128, 128)));
cntrolPanel.add(STArea);
SButton = new ScheduleButton(null);
SButton.setBorder(new MatteBorder(1, 1, 1, 1, (Color) Color.GRAY));
cntrolPanel.add(SButton);
}
private void createMenuBar() {
BHandler handler = new BHandler();
JMenuBar menuBar= new JMenuBar();
setJMenuBar(menuBar);
JMenu mnFile = new JMenu("File");
menuBar.add(mnFile);
mnFile.setMnemonic(KeyEvent.VK_F);
JMenuItem mntmSave = new JMenuItem("Save");
mnFile.add(mntmSave);
mntmSave.setMnemonic(KeyEvent.VK_S);
JMenuItem mntmLoad = new JMenuItem("Load");
mnFile.add(mntmLoad);
mntmLoad.setMnemonic(KeyEvent.VK_L);
JMenuItem mntmClear = new JMenuItem("Clear");
mnFile.add(mntmClear);
mntmClear.setMnemonic(KeyEvent.VK_C);
JMenuItem mntmExit = new JMenuItem("Exit");
mnFile.add(mntmExit);
mntmExit.setMnemonic(KeyEvent.VK_X);
mntmSave.addActionListener(handler);
mntmLoad.addActionListener(handler);
mntmClear.addActionListener(handler);
mntmExit.addActionListener(handler);
JMenu mnColor = new JMenu("Color");
menuBar.add(mnColor);
mnColor.setMnemonic(KeyEvent.VK_O);
BRed = new JRadioButtonMenuItem("Red");
mnColor.add(BRed);
mnColor.setMnemonic(KeyEvent.VK_R);
BBlue = new JRadioButtonMenuItem("Blue");
mnColor.add(BBlue);
mnColor.setMnemonic(KeyEvent.VK_B);
BGreen = new JRadioButtonMenuItem("Green");
mnColor.add(BGreen);
mnColor.setMnemonic(KeyEvent.VK_G);
BYellow = new JRadioButtonMenuItem("Yellow ");
mnColor.add(BYellow);
mnColor.setMnemonic(KeyEvent.VK_Y);
BRed.setOpaque(false);
BGreen.setOpaque(false);
BBlue.setOpaque(false);
BYellow.setOpaque(false);
BRed.addActionListener(handler);
BBlue.addActionListener(handler);
BGreen.addActionListener(handler);
BYellow.addActionListener(handler);
}
private class BHandler implements ActionListener {
public void actionPerformed(ActionEvent e){
if(e.getSource() == BRed){
cntrolPanel.setBackground(Color.RED);
}else if(e.getSource() == BBlue){
cntrolPanel.setBackground(Color.BLUE);
}else if(e.getSource()== BGreen){
cntrolPanel.setBackground(Color.GREEN);
}else if(e.getSource()== BYellow){
cntrolPanel.setBackground(Color.YELLOW);
}else if(e.getActionCommand().equals("Save")){
JFileChooser jfc = new JFileChooser();
int Selection =jfc.showSaveDialog(null);
try {
if (Selection==JFileChooser.APPROVE_OPTION) {
File f = jfc.getSelectedFile();
PrintWriter pw = new PrintWriter(new FileWriter(f.getAbsolutePath()));
pw.print(STArea.getTArea());
pw.close();
}
} catch (IOException e1) {
e1.printStackTrace();
}
}else if (e.getActionCommand().equals("Load")){
JFileChooser loadFile = new JFileChooser();
loadFile.showOpenDialog(null);
try{
Scanner file = new Scanner(loadFile.getSelectedFile());
StringBuffer contents = new StringBuffer();
while (file.hasNextLine()) {
contents.append(file.nextLine() + " ");
STArea.getTArea().setText(contents.toString());
}
file.close();
} catch (FileNotFoundException fnfe) {
}
}else if (e.getActionCommand().equals("Clear")){
STArea.getTArea().setText("");
STArea.getTFieldName().setText("");
STArea.getTFieldClass().setText("");
SButton.getlistModel().clear();
}else if (e.getActionCommand().equals("Exit")) {
System.exit(0);
}
}
}
@Override
public void actionPerformed(ActionEvent ae) {
}
@Override
public void valueChanged(ListSelectionEvent e) {
}
}
import java.awt.Dimension;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import java.awt.GridLayout;
import javax.swing.JLabel;
import java.awt.FlowLayout;
import javax.swing.ScrollPaneConstants;
import javax.swing.JTextPane;
import java.awt.BorderLayout;
import javax.swing.BoxLayout;
import javax.swing.SwingConstants;
public class ScheduleTextArea extends JPanel{
private JTextArea TA;
private JTextField txtName;
private JTextField txtClass;
private JTextPane txtpnStudentsName;
private JTextPane txtpnStudentsClass;
private JPanel panel;
private JPanel panel_1;
public ScheduleTextArea(){
panel = new JPanel();
add(panel);
txtpnStudentsName = new JTextPane();
panel.add(txtpnStudentsName);
txtpnStudentsName.setText("Student's Name:");
txtName = new JTextField();
panel.add(txtName);
txtName.setColumns(10);
txtpnStudentsClass = new JTextPane();
panel.add(txtpnStudentsClass);
txtpnStudentsClass.setText("Student's Class:");
txtClass= new JTextField();
panel.add(txtClass);
txtClass.setColumns(10);
panel_1 = new JPanel();
add(panel_1);
JScrollPane scrollPane = new JScrollPane();
panel_1.add(scrollPane);
scrollPane.setPreferredSize(new Dimension(250, 250));
TA = new JTextArea();
scrollPane.setViewportView(TA);
}
public JTextArea getTArea() {
return TA;
}
public void setTArea(JTextArea TArea) {
this.TA = TArea;
}
public JTextField getTFieldName(){
return txtName;
}
public JTextField getTFieldClass(){
return txtClass;
}
public void setFieldName(JTextField txtName){
this.txtName= txtName;
}
public void setFieldClass(JTextField txtClass){
this.txtClass= txtClass;
}
}
import java.awt.FlowLayout;
import javax.swing.DefaultListModel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.ListSelectionModel;
import javax.swing.event.ListSelectionListener;
public class ScheduleButton extends JPanel {
private JList list;
private DefaultListModel listModel;
public ScheduleButton(Schedule S){
super();
setLayout(new FlowLayout());
JPanel listPanel = new JPanel();
listModel= new DefaultListModel();
list = new JList(listModel);
list.addListSelectionListener(S);
this.list.setVisibleRowCount(6);
this.list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
JScrollPane scrollPane = new JScrollPane(list);
listPanel.add(scrollPane);
add(listPanel);
JPanel btnPanel= new JPanel();
JButton btnInitialize = new JButton("Initialize ");
btnInitialize.setIcon(new ImageIcon("C:\Users\Dalal\Desktop\mocu.png"));
btnPanel.add(btnInitialize);
btnInitialize.addActionListener(S);
JButton btnAdd = new JButton("Add");
btnPanel.add(btnAdd);
btnAdd.addActionListener(S);
JButton btnRemove = new JButton("Remove");
btnPanel.add(btnRemove);
btnRemove.addActionListener(S);
add(btnPanel);
}
public JList getlist() {
return list;
}
public DefaultListModel getlistModel() {
return listModel;
}
public void setlist(JList list) {
this.list = list;
}
public void setlistModel(DefaultListModel listModel) {
this.listModel = listModel;
}
}
Explanation / Answer
//Schedule.java
//ScheduleButton.java
//ScheduleTextArea.java
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.