📄 bookpanel.java
字号:
gridBagConstraints.gridy = 0;
gridBagConstraints.gridwidth = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
gridBagConstraints.ipadx = 200;
gridBagConstraints.insets = new java.awt.Insets(17, 6, 0, 18);
jPanel2.add(jTextField1, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 2;
gridBagConstraints.gridwidth = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.ipadx = 50;
gridBagConstraints.insets = new java.awt.Insets(6, 6, 0, 18);
jPanel2.add(jTextField2, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 4;
gridBagConstraints.gridwidth = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.ipadx = 50;
gridBagConstraints.insets = new java.awt.Insets(6, 6, 0, 18);
jPanel2.add(jTextField3, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 6;
gridBagConstraints.gridwidth = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.ipadx = 50;
gridBagConstraints.insets = new java.awt.Insets(6, 6, 0, 18);
jPanel2.add(jTextField4, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 8;
gridBagConstraints.gridwidth = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.ipadx = 50;
gridBagConstraints.insets = new java.awt.Insets(6, 6, 0, 18);
jPanel2.add(jTextField5, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 10;
gridBagConstraints.gridwidth = 5;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.ipadx = 50;
gridBagConstraints.insets = new java.awt.Insets(6, 6, 0, 18);
jPanel2.add(jTextField6, gridBagConstraints);
jButton2.setText("Add Book");
jPanel4.add(jButton2);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridy = 11;
gridBagConstraints.gridwidth = 6;
gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
gridBagConstraints.insets = new java.awt.Insets(17, 0, 17, 0);
jPanel2.add(jPanel4, gridBagConstraints);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 0;
gridBagConstraints.insets = new java.awt.Insets(17, 17, 0, 17);
add(jPanel2, gridBagConstraints);
}//GEN-END:initComponents
private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextField1ActionPerformed
// Add your handling code here:
}//GEN-LAST:event_jTextField1ActionPerformed
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private javax.swing.JTextField jTextField3;
private javax.swing.JTextField jTextField4;
private javax.swing.JTextField jTextField5;
private javax.swing.JTextField jTextField6;
// End of variables declaration//GEN-END:variables
private BooksPanelListener booksPanelListener;
private Schedule schedule = Schedule.getSchedule();
private BookTableModel btm;
private void addListeners() {
booksPanelListener = new BooksPanelListener();
jButton1.addActionListener(booksPanelListener);
jButton2.addActionListener(booksPanelListener);
}
public void update(java.util.Observable observable, Object obj) {
btm.fireTableDataChanged();
}
/**
* Inner class to handle the events
*/
class BooksPanelListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
System.out.println("I hear " + "|"+e.getActionCommand()+"|");
if (e.getActionCommand().equals("Add Book")){
// get the strings from the fields
//firstField.getText().trim();
String title = jTextField1.getText().trim();
String edition = jTextField2.getText().trim();
String author = jTextField3.getText().trim();
String publisher = jTextField4.getText().trim();
String year = jTextField5.getText().trim();
String isbn = jTextField6.getText().trim();
if (title.equals("") && author.equals(""))
// go back - do nothing not enough info
return;
Textbook myBook = new Textbook(title, edition, author,
publisher, year, isbn); // create the Textbook
System.out.println(myBook);
schedule.addBook(myBook); // add it to the schedule
jTextField1.setText(""); // resert the fields to blank
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextField6.setText("");
} else if (e.getActionCommand().equals("Modify Book")){
System.out.println("I'm Modifying a book over here");
} else if (e.getActionCommand().equals("Delete Selected Book(s)")){
System.out.println("I'm deleting a book over here");
}
}
} // end inner class
public class BookTableModel extends AbstractTableModel {
private Schedule schedule;
final String[] columnNames = { "Title",
"Ed.",
"Author",
"Publisher",
"Year",
"ISBN"
};
/** Creates a new instance of BookTableModel */
public BookTableModel() {
schedule = Schedule.getSchedule();
}
public int getColumnCount() {
return columnNames.length;
}
public int getRowCount() {
return schedule.getBooks().size();
}
public String getColumnName(int col) {
return columnNames[col];
}
public Class getColumnClass(int c) {
return " ".getClass();
}
public boolean isCellEditable(int row, int col) {
return false;
}
public Object getValueAt(int row, int col) {
Textbook book = (Textbook)schedule.getBooks().get(row);
switch(col){
case 0: return book.getTitle();
case 1: return book.getEdition();
case 2: return book.getAuthor();
case 3: return book.getPublisher();
case 4: return book.getYear();
case 5: return book.getISBN();
}
return null; // should never do this
}
public void setValueAt(Object value, int row, int col) {
fireTableCellUpdated(row, col);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -