|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.swing.table.AbstractTableModel
UserView
public class UserView
Luokka toimii JTable-komponentin tieto-oliona, jonka palveluita käyttäen JTable saa tarvitsemansa taulukon piirtämiseen ja sen tietojen muokkaamiseen.
Luokka toteuttaa tähän vaaditun TableModel-rajapinnan perimänsä AbstractTableModel-luokan kautta, joka tarjoaa monia valmiiksi toteutettuja ominaisuuksia jättäen toteutettavaksi vain välttämättömimmän.
UserView-oliota käytetään JTable-komponentin tietosisällön mallina, kun halutaan näyttää ja käsitellä käyttäjiä:
Luokan ilmentymä säilöö ja tarjoaa piirrettäväksi Käyttäjät-välilehden tietosisällön.
UserView asetetaan JTable-komponentille esimerkiksi konstruktorissa
UserView-olion oma tietosisältö täytyy asettaa ja päivittää setData-metodilla.
Constructor Summary | |
---|---|
UserView()
Konstruktorissa ei tee mitään. |
Method Summary | |
---|---|
BasicProduct[] |
getBalanceProducts()
Metodi palauttaa listan tämän olion sisältämistä perustuotteista. |
java.lang.Class<?> |
getColumnClass(int col)
JTable käyttää metodia selvittääkseen sarakkeen arvojen tyypin. |
int |
getColumnCount()
JTable käyttää tätä metodia selvittääkseen sarakkeiden määrän. |
java.lang.String |
getColumnName(int col)
JTable käyttää metodia sarakkeiden otsikoiden saamiseksi. |
int |
getIntLastEditedRow()
|
int |
getRowCount()
JTable käyttää tätä metodia selvittääkseen rivien määrän. |
User[] |
getUsers()
Metodi palauttaa listan tämän olion sisältämistä käyttäjistä. |
java.lang.Object |
getValueAt(int row,
int col)
JTable käyttää tätä metodia selvittääkseen solun arvon piirtämistä varten. |
boolean |
isCellEditable(int row,
int col)
JTable määrittää metodin avulla, onko tietyn solu arvo muokattavissa. |
void |
setData(User[] objUsers,
BasicProduct[] objBps)
Metodilla asetetaan taulukon tietosisältö. |
void |
setIntLastEditedRow(int argIntLastEditedRow)
|
void |
setValueAt(java.lang.Object value,
int row,
int col)
JTable käyttää metodia, kun käyttäjä muokkaa jonkun solun arvoa. |
Methods inherited from class javax.swing.table.AbstractTableModel |
---|
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, removeTableModelListener |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public UserView()
Method Detail |
---|
public java.lang.Class<?> getColumnClass(int col)
JTable käyttää metodia selvittääkseen sarakkeen arvojen tyypin. Se tarvitsee tietoa määrittäessään editorin ja piirtäjän sarakkeen soluille.
Jos indeksi on virheellinen, palauttaa metodi Object.class
getColumnClass
in interface javax.swing.table.TableModel
getColumnClass
in class javax.swing.table.AbstractTableModel
col
- sarakkeen indeksi
public int getColumnCount()
JTable käyttää tätä metodia selvittääkseen sarakkeiden määrän.
Käyttäjätaulukossa on 9 + objBalanceProducts.length*3 saraketta.
public int getRowCount()
public java.lang.String getColumnName(int col)
JTable käyttää metodia sarakkeiden otsikoiden saamiseksi.
Metodi päättelee col-arvon perusteella palautettavan merkkijonon, jonka se hakee Utilities.getString(String) -metodin avulla.
getColumnName
in interface javax.swing.table.TableModel
getColumnName
in class javax.swing.table.AbstractTableModel
col
- sarakkeen indeksi
public boolean isCellEditable(int row, int col)
JTable määrittää metodin avulla, onko tietyn solu arvo muokattavissa.
Metodi palauttaa false, jos
Muissa tapauksissa palautetaan true.
isCellEditable
in interface javax.swing.table.TableModel
isCellEditable
in class javax.swing.table.AbstractTableModel
row
- rivicol
- sarake
public java.lang.Object getValueAt(int row, int col)
row
- rivin indeksicol
- sarakkeen indeksi
java.lang.NullPointerException
- jos rivin indeksissä on null-viitepublic void setValueAt(java.lang.Object value, int row, int col)
JTable käyttää metodia, kun käyttäjä muokkaa jonkun solun arvoa.
Parametrit viittaavat indekseillään tiettyyn taulukon soluun. Value-parametrin arvo tulee joltakin JTable-komponentille rekisteröidyltä editorilta, jolla käyttäjä on muokannut solun arvoa.
setValueAt
in interface javax.swing.table.TableModel
setValueAt
in class javax.swing.table.AbstractTableModel
value
- editorin antama arvorow
- rivin indeksicol
- sarakkeen indeksipublic User[] getUsers()
public BasicProduct[] getBalanceProducts()
public void setData(User[] objUsers, BasicProduct[] objBps)
Metodilla asetetaan taulukon tietosisältö.
JTablen tarvitsemat palvelut nojautuvat tällä metodilla asetetun taulukon sisältöön.
Metodia kutsutaan MainFrame-luokan RefreshTables()-metodista käsin.
Metodi asettaa suoraan saamansa User-taulukon oman User[]-attribuuttinsa arvoksi.
Tälle metodille voi syöttää suoraan Utilities.getBasicProducts()-metodin paluuarvon. Metodi asettaa parametrina saamansa BasicProduct-taulukon objBasicProducts-kentän arvoksi, mutta jättää viimeisen, uuden tuotteen luomiseen tarkoitetun olion kopioimatta.
Null-parametri aiheuttaa poikkeuksen.
objUsers
- Utilities.getUsers()objBps
- Utilities.getBasicProducts()
java.lang.IllegalArgumentException
- jos parametri on nullpublic int getIntLastEditedRow()
public void setIntLastEditedRow(int argIntLastEditedRow)
argIntLastEditedRow
- the intLastEditedRow to set
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |