Browse Source

tables

master
esoe 3 years ago
parent
commit
d24e3b908e
  1. 2
      src/main/java/ru/egspt/App.java
  2. 3
      src/main/java/ru/egspt/BaseControls.java
  3. 12
      src/main/java/ru/egspt/ReportPane.java
  4. 16
      src/main/java/ru/egspt/ReportTableModel.java
  5. 5
      src/main/java/ru/egspt/TagControls.java
  6. BIN
      target/classes/ru/egspt/App.class
  7. BIN
      target/classes/ru/egspt/BaseControls.class
  8. BIN
      target/classes/ru/egspt/ReportPane.class
  9. BIN
      target/classes/ru/egspt/ReportTableModel.class
  10. BIN
      target/classes/ru/egspt/TagControls.class

2
src/main/java/ru/egspt/App.java

@ -76,7 +76,7 @@ public class App extends JPanel{ @@ -76,7 +76,7 @@ public class App extends JPanel{
}
public static void main( String[] args )
{
System.out.println( "Работает подготовщик отчетов по результатам тестирования пользователей ..." );
System.out.println( "Работает подготовщик отчетов по результатам тестирования пользователей App-moodle-anyreport ..." );
App anyreport = new App();
anyreport.initFrame();
anyreport.init();

3
src/main/java/ru/egspt/BaseControls.java

@ -22,9 +22,8 @@ public class BaseControls { @@ -22,9 +22,8 @@ public class BaseControls {
app.getDataPane().setResults(app.getData());
app.getDataPane().setVisible(true);
//данные в панель отчетов
app.getReportPane().setupReportTablePane(app.getData());
app.getReportPane().init();
app.getReportPane().setReportData(app.getData());
}
public static void DisconnectFromServer(App app){

12
src/main/java/ru/egspt/ReportPane.java

@ -16,9 +16,9 @@ public class ReportPane extends JPanel { @@ -16,9 +16,9 @@ public class ReportPane extends JPanel {
private JPanel reportTextPane = new JPanel();
private JPanel reportSettingsPane = new JPanel();
public ReportPane(){}
//панель по данным App
public ReportPane(App app){
setupReportTablePane(app);
setupReportTablePane(app.getData());
}
public void init(){
this.setLayout(new BorderLayout());
@ -29,15 +29,17 @@ public class ReportPane extends JPanel { @@ -29,15 +29,17 @@ public class ReportPane extends JPanel {
this.setBorder(border);
this.setVisible(true);
}
public void setupReportTablePane(App app){
reportTableModel = new ReportTableModel(app);
public void setupReportTablePane(Data report){
reportTableModel = new ReportTableModel(report);
reportTable = new JTable(reportTableModel);
//настройка заголовков
//настройка заголовков таблицы
int i = 0;
while (i < reportTableModel.getHeader().length){
reportTable.getColumnModel().getColumn(i).setHeaderValue(reportTableModel.getHeader()[i]);
i++;
}
reportTable.setAutoResizeMode(reportTable.AUTO_RESIZE_OFF);
JScrollPane scrollPane = new JScrollPane(reportTable, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
reportTablePane.setLayout(new BorderLayout());
reportTablePane.add(scrollPane);

16
src/main/java/ru/egspt/ReportTableModel.java

@ -5,18 +5,20 @@ import java.util.ArrayList; @@ -5,18 +5,20 @@ import java.util.ArrayList;
import javax.swing.table.AbstractTableModel;
public class ReportTableModel extends AbstractTableModel{
private Object[] header;// = new String[]{"id", "login", "mail"};
private Object[] header;
private Object[][] data;
//создаем модель без данных
public ReportTableModel(){}
public ReportTableModel(Object[] header, Object[][] data){
setHeader(header);
setData(data);
}
//создаем модель по данным Data
public ReportTableModel(Data data){
setHeader(getHeaderByQuize(data));
setData(data);
}
//создаем модель по данным предварительно переданным в App
public ReportTableModel(App app){
setHeader(getHeaderByQuize(app.getData()));
setData(app.getData());
@ -62,7 +64,7 @@ public class ReportTableModel extends AbstractTableModel{ @@ -62,7 +64,7 @@ public class ReportTableModel extends AbstractTableModel{
int i = 0;
while (i < report.getQuizes().size()){
header.add(report.getQuizes().get(i).getName());
System.out.println("Пишем заголовок: " + report.getQuizes().get(i).getName());
//System.out.println("Пишем заголовок: " + report.getQuizes().get(i).getName());
header.add("");
i++;
}
@ -86,6 +88,9 @@ public class ReportTableModel extends AbstractTableModel{ @@ -86,6 +88,9 @@ public class ReportTableModel extends AbstractTableModel{
public void setData(Data report) {
//создаем объект data - инициализация переменной
Object[][] d = new Object[report.getUsers().size()][3 + 2*report.getQuizes().size()];
System.out.println("Количество столбцов Object[][] d: " + (3 + 2*report.getQuizes().size()));
System.out.println("Количество строк Object[][] d: " + report.getUsers().size());
//построчно заполняем модель отчета данными
int userCurr = 0;
while (userCurr < report.getUsers().size()){
@ -115,13 +120,16 @@ public class ReportTableModel extends AbstractTableModel{ @@ -115,13 +120,16 @@ public class ReportTableModel extends AbstractTableModel{
}
//пишем строку в d
int j = 0;
while (j < d[userCurr].length){
while (j < string.size()){
//while (j < 3){
d[userCurr][j] = string.toArray()[j];
j++;
}
userCurr++;
}
this.data = d;
fireTableDataChanged();
}
/**
* @return the data

5
src/main/java/ru/egspt/TagControls.java

@ -17,8 +17,10 @@ public class TagControls { @@ -17,8 +17,10 @@ public class TagControls {
app.getReportPane().getReportTableModel().setHeader(app.getReportPane().getReportTableModel().getHeaderByQuize(report));
//формирование данных в таблице
app.getReportPane().getReportTableModel().setData(report);
//app.getReportPane().setupReportTablePane(app);
//app.getReportPane().setupReportTablePane(report);
//app.getReportPane()
app.getReportPane().getReportTableModel().fireTableDataChanged();
}
//удаляем тег из модели
public static void removeTag(App app){
@ -34,6 +36,7 @@ public class TagControls { @@ -34,6 +36,7 @@ public class TagControls {
//app.getDataPane().setUsers(data);
//app.getDataPane().getUsersTableModel().fireTableDataChanged();
app.getReportPane().setReportData(data);
//app.getReportPane().setupReportTablePane(app);
app.getReportPane().getReportTableModel().fireTableDataChanged();
}
}

BIN
target/classes/ru/egspt/App.class

Binary file not shown.

BIN
target/classes/ru/egspt/BaseControls.class

Binary file not shown.

BIN
target/classes/ru/egspt/ReportPane.class

Binary file not shown.

BIN
target/classes/ru/egspt/ReportTableModel.class

Binary file not shown.

BIN
target/classes/ru/egspt/TagControls.class

Binary file not shown.
Loading…
Cancel
Save