Scrollable tables
This commit is contained in:
parent
7975e49b23
commit
4152d529f7
2 changed files with 32 additions and 19 deletions
|
@ -46,6 +46,8 @@ import java.awt.event.FocusEvent;
|
|||
import javax.swing.JToggleButton;
|
||||
import javax.swing.LayoutStyle.ComponentPlacement;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.ScrollPaneConstants;
|
||||
import java.awt.Dimension;
|
||||
|
||||
public class EditorGUI extends JFrame {
|
||||
//Components
|
||||
|
@ -182,9 +184,9 @@ public class EditorGUI extends JFrame {
|
|||
panelStandardMetadata = new JPanel();
|
||||
tabbedPane.addTab("Метаданные либры", null, panelStandardMetadata, null);
|
||||
tabbedPane.setEnabledAt(0, true);
|
||||
/*
|
||||
* if (true) { addMetadataTab(new OutlineElement(null, "Тестовое название")); }
|
||||
*/
|
||||
|
||||
if (true) { addMetadataTab(new OutlineElement(null, "Тестовое название")); }
|
||||
|
||||
for (OutlineElement element : outline) {
|
||||
addMetadataTab(element);
|
||||
}
|
||||
|
@ -218,10 +220,8 @@ public class EditorGUI extends JFrame {
|
|||
|
||||
private void addMetadataTab(OutlineElement element) {
|
||||
JPanel panelOutline = new JPanel();
|
||||
JTable tableOutline = new MetadataTable();
|
||||
MetadataTableModel outlineTableModel = createOutlineTableModel(element);
|
||||
tableModels.add(outlineTableModel);
|
||||
configureTableOutline(tableOutline, outlineTableModel);
|
||||
|
||||
JButton btnOutlineSave = new JButton("Сохранить");
|
||||
btnOutlineSave.addActionListener(new ActionListener() {
|
||||
|
@ -230,27 +230,41 @@ public class EditorGUI extends JFrame {
|
|||
}
|
||||
});
|
||||
|
||||
JScrollPane scrollPane = new JScrollPane();
|
||||
scrollPane.setSize(new Dimension(50, 50));
|
||||
|
||||
JButton btnOutlineSave_1 = new JButton("Закрыть");
|
||||
|
||||
GroupLayout groupLayoutOutlineMetadata = new GroupLayout(panelOutline);
|
||||
groupLayoutOutlineMetadata.setHorizontalGroup(
|
||||
groupLayoutOutlineMetadata.createParallelGroup(Alignment.LEADING)
|
||||
.addGroup(groupLayoutOutlineMetadata.createSequentialGroup()
|
||||
.addGap(34)
|
||||
.addComponent(tableOutline, GroupLayout.DEFAULT_SIZE, 839, Short.MAX_VALUE)
|
||||
.addGap(126))
|
||||
.addGroup(Alignment.TRAILING, groupLayoutOutlineMetadata.createSequentialGroup()
|
||||
.addContainerGap(748, Short.MAX_VALUE)
|
||||
.addComponent(btnOutlineSave)
|
||||
.addGap(134))
|
||||
.addGroup(groupLayoutOutlineMetadata.createParallelGroup(Alignment.TRAILING)
|
||||
.addGroup(groupLayoutOutlineMetadata.createSequentialGroup()
|
||||
.addContainerGap(557, Short.MAX_VALUE)
|
||||
.addComponent(btnOutlineSave_1, GroupLayout.PREFERRED_SIZE, 108, GroupLayout.PREFERRED_SIZE)
|
||||
.addGap(104)
|
||||
.addComponent(btnOutlineSave)
|
||||
.addGap(32))
|
||||
.addGroup(groupLayoutOutlineMetadata.createSequentialGroup()
|
||||
.addGap(45)
|
||||
.addComponent(scrollPane, GroupLayout.DEFAULT_SIZE, 864, Short.MAX_VALUE)))
|
||||
.addGap(90))
|
||||
);
|
||||
groupLayoutOutlineMetadata.setVerticalGroup(
|
||||
groupLayoutOutlineMetadata.createParallelGroup(Alignment.LEADING)
|
||||
.addGroup(groupLayoutOutlineMetadata.createSequentialGroup()
|
||||
.addGap(85)
|
||||
.addComponent(tableOutline, GroupLayout.DEFAULT_SIZE, 497, Short.MAX_VALUE)
|
||||
.addGap(52)
|
||||
.addComponent(btnOutlineSave)
|
||||
.addGap(43))
|
||||
.addGroup(Alignment.TRAILING, groupLayoutOutlineMetadata.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addComponent(scrollPane, GroupLayout.DEFAULT_SIZE, 600, Short.MAX_VALUE)
|
||||
.addGap(31)
|
||||
.addGroup(groupLayoutOutlineMetadata.createParallelGroup(Alignment.BASELINE)
|
||||
.addComponent(btnOutlineSave_1)
|
||||
.addComponent(btnOutlineSave))
|
||||
.addGap(34))
|
||||
);
|
||||
JTable tableOutline = new MetadataTable();
|
||||
scrollPane.setViewportView(tableOutline);
|
||||
configureTableOutline(tableOutline, outlineTableModel);
|
||||
|
||||
JPopupMenu popupMenu = new JPopupMenu();
|
||||
addPopup(tableOutline, popupMenu);
|
||||
|
|
|
@ -17,7 +17,6 @@ public class MetadataTableRenderer extends JTextArea implements TableCellRendere
|
|||
|
||||
public Component getTableCellRendererComponent(JTable table,Object value,
|
||||
boolean isSelected, boolean hasFocus, int row,int column) {
|
||||
|
||||
this.setText(value == null ? "" : value.toString());
|
||||
return this;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue