• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

java unable to delete from array list

 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,

I am new to forums. This is my first forum post ever.
I am new to java and i am creating a desktop application.
I have a table in ManageJPanel and when i click on add button, it goe to addJPanel, i can add item and go back to Manageitem jpanel.To view the item, i highlight the selected item and click on View button. It will take me to viewjpanel. Here i can choose to remove the item by clicking the remove button.
All the items are in a class. Since there will be many items, there is a array list of the items created in item catalog class.

My proble: i am unable to remove the item from the table on the click on remove button.

manage jpanel code:

package UserInterface.Marketing;

import Business.Business;
import UserInterface.Util.*;
import Business.SystemAdmin.MarketList;
import java.util.ArrayList;
import javax.swing.table.*;
import Business.SystemAdmin.Market;
import Business.SystemAdmin.PersonDirectory;
import Business.SystemAdmin.UserAccount;

public class ManageMarketJPanel extends javax.swing.JPanel {
private MarketList marketListRefVar;
private Market selectedmarket;
private PersonDirectory pdRefVar;
private Business business;
private UserAccount uaRefVar;
private Market marketRefVar;

public ManageMarketJPanel(Business z, MarketList a, PersonDirectory b)
{
initComponents();
marketListRefVar = a;
pdRefVar= b;
business = z;
refresh();
}

private void refresh()
{
int rowcount = marketListTable.getRowCount();
int i = 0;
for(i = rowcount -1 ; i > 0; i--)
{
((DefaultTableModel)marketListTable.getModel()).removeRow(i);
}
ArrayList<Market> markets = marketListRefVar.getmarketList();
{
for(Market m: markets)
{
Object[] market_row = new Object[2];
market_row [0] = m;
market_row [1] = m.getincome();
((DefaultTableModel)marketListTable.getModel()).addRow(market_row);
}
}

}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

TitleLabel = new javax.swing.JLabel();
jButton12 = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
marketListTable = new javax.swing.JTable();
jButton1 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
jButton7 = new javax.swing.JButton();

setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

TitleLabel.setFont(new java.awt.Font("Lucida Grande", 1, 24));
TitleLabel.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
TitleLabel.setText("Manage Markets");
add(TitleLabel, new org.netbeans.lib.awtextra.AbsoluteConstraints(370, 20, 210, 40));

jButton12.setText("Back");
jButton12.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton12ActionPerformed(evt);
}
});
add(jButton12, new org.netbeans.lib.awtextra.AbsoluteConstraints(750, 470, -1, -1));

marketListTable.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {

},
new String [] {
"Market Name", "Income"
}
) {
boolean[] canEdit = new boolean [] {
false, false
};

public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
jScrollPane1.setViewportView(marketListTable);

add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 90, 720, 350));

jButton1.setText("Add Market");
jButton1.setToolTipText("Create Business");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
add(jButton1, new org.netbeans.lib.awtextra.AbsoluteConstraints(510, 470, 120, -1));

jButton3.setText("Refresh");
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
add(jButton3, new org.netbeans.lib.awtextra.AbsoluteConstraints(750, 40, -1, -1));

jButton7.setText("View Detail");
jButton7.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton7ActionPerformed(evt);
}
});
add(jButton7, new org.netbeans.lib.awtextra.AbsoluteConstraints(640, 470, -1, -1));
}// </editor-fold>

private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
int rr = marketListTable.getSelectionModel().getLeadSelectionIndex();
if (rr < 0 || rr >= marketListTable.getRowCount())
{return;}

selectedmarket = (Market) marketListTable.getValueAt(rr,0);

ViewMarketJPanel amjp = new ViewMarketJPanel(selectedmarket, marketListRefVar);
CardLayoutUtil.getCardLayoutJPanel().addAndMoveToNextJPanel("ViewMarketJPanel", amjp);
}

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here: REFRESH
refresh();
}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here: ADD

AddMarketJPanel amjp = new AddMarketJPanel(business, marketListRefVar);
CardLayoutUtil.getCardLayoutJPanel().addAndMoveToNextJPanel("AddMarketJPanel", amjp);
}

private void jButton12ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here: BACK BUTTON
CardLayoutUtil.getCardLayoutJPanel().removeAndMoveToPreviousJPanel(this);
}


// Variables declaration - do not modify
private javax.swing.JLabel TitleLabel;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton12;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton7;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable marketListTable;
// End of variables declaration

}

view jpanel code:
package UserInterface.Marketing;
import javax.swing.JOptionPane;
import java.util.ArrayList;
import UserInterface.Util.*;
import Business.SystemAdmin.Market;
import Business.SystemAdmin.MarketList;
import Business.SystemAdmin.Person;
import Business.SystemAdmin.PersonDirectory;

public class ViewMarketJPanel extends javax.swing.JPanel {
private Market marketRefVar;
private MarketList marketListRefVar;
private PersonDirectory pdRefVar;

public ViewMarketJPanel(Market a, MarketList b)
{
initComponents();
marketRefVar = a;
marketListRefVar = b;
pdRefVar = new PersonDirectory();

//displayPersonByRole(Person.Role.CUSTOMER);

marketNameTextField.setText(marketRefVar.getmarketName());
incomeTextField.setText(marketRefVar.getincome());
descriptionList.setListData(marketRefVar.getdescription().toArray());
customerList.setListData(marketRefVar.getpersonInMarket().toArray());
}

// private void displayPersonByRole(Person.Role role)
// {
// ArrayList<Person> personList = pdRefVar.getPersonsByRole(role);
// personComboBox.removeAllItems();
// for (Person p : personList)
// {personComboBox.addItem(p);}
// }

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jButton2 = new javax.swing.JButton();
marketNameTextField = new javax.swing.JTextField();
jLabel7 = new javax.swing.JLabel();
incomeTextField = new javax.swing.JTextField();
jLabel8 = new javax.swing.JLabel();
jScrollPane1 = new javax.swing.JScrollPane();
descriptionList = new javax.swing.JList();
RemoveMarket = new javax.swing.JButton();
jButton5 = new javax.swing.JButton();
jScrollPane2 = new javax.swing.JScrollPane();
customerList = new javax.swing.JList();

setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

jLabel1.setFont(new java.awt.Font("Lucida Grande", 1, 24));
jLabel1.setText("Market Details");
add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(390, 30, -1, -1));

jLabel2.setFont(new java.awt.Font("Lucida Grande", 1, 13));
jLabel2.setText("Market Name:");
add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(50, 110, -1, -1));

jButton2.setText("Back");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
add(jButton2, new org.netbeans.lib.awtextra.AbsoluteConstraints(620, 400, -1, -1));

marketNameTextField.setBackground(new java.awt.Color(204, 204, 204));
marketNameTextField.setEditable(false);
add(marketNameTextField, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 110, 180, -1));

jLabel7.setFont(new java.awt.Font("Lucida Grande", 1, 13));
jLabel7.setText("Income: $");
add(jLabel7, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 150, -1, -1));

incomeTextField.setBackground(new java.awt.Color(204, 204, 204));
incomeTextField.setEditable(false);
add(incomeTextField, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 150, 90, -1));

jLabel8.setFont(new java.awt.Font("Lucida Grande", 1, 13));
jLabel8.setText("Description:");
add(jLabel8, new org.netbeans.lib.awtextra.AbsoluteConstraints(60, 190, -1, 20));

jScrollPane1.setViewportView(descriptionList);

add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 200, 300, -1));

RemoveMarket.setText("Remove Market");
RemoveMarket.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
RemoveMarketActionPerformed(evt);
}
});
add(RemoveMarket, new org.netbeans.lib.awtextra.AbsoluteConstraints(490, 400, -1, -1));

jButton5.setText("Update");
jButton5.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton5ActionPerformed(evt);
}
});
add(jButton5, new org.netbeans.lib.awtextra.AbsoluteConstraints(410, 400, -1, -1));

jScrollPane2.setViewportView(customerList);

add(jScrollPane2, new org.netbeans.lib.awtextra.AbsoluteConstraints(540, 200, 210, -1));
}// </editor-fold>

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:

UpdateMarketJPanel umjp = new UpdateMarketJPanel(marketRefVar);
CardLayoutUtil.getCardLayoutJPanel().addAndMoveToNextJPanel("UpdateMarketJPanel", umjp);
}

private void RemoveMarketActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
JOptionPane.showMessageDialog(null, "This market will be deleted from the list.");
ArrayList <Market> marketList = marketListRefVar.getmarketList();
System.out.println("after the array");
if (marketList.contains(marketRefVar))
marketList.remove(marketRefVar);
}

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here: CANCEL
CardLayoutUtil.getCardLayoutJPanel().removeAndMoveToPreviousJPanel(this);
}


// Variables declaration - do not modify
private javax.swing.JButton RemoveMarket;
private javax.swing.JList customerList;
private javax.swing.JList descriptionList;
private javax.swing.JTextField incomeTextField;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton5;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JTextField marketNameTextField;
// End of variables declaration

}

on the click on remove, it wont go inot the code in emove button, no errors either.

can someone please guide me here.

Thank you.
 
Marshal
Posts: 79180
377
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I am about to send you an important administrative private message; please act on it. CR
 
Warning! Way too comfortable! Do not sit! Try reading this tiny ad instead:
a bit of art, as a gift, that will fit in a stocking
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic