1  void MainWindow::on_loadButton_clicked()
2  {
3     QFile file("student.dat");
4     if(!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
5         QMessageBox::information(this, "Warning", "File not open");
6         return;
7     }
8     QDataStream ds(&file);
9     int row = 0;
10    QTableWidget *table = new QTableWidget(this);
11    table->setFont(QFont("times", 9 , QFont::Bold));
12    table->setColumnCount(3);
13    QStringList label;
14    label <<"Name" << "Student number" << "Average";
15    table->setHorizontalHeaderLabels(label);
16    while(!file.atEnd()) {
17      ds >> st;
18      QTableWidgetItem *item1 =  new QTableWidgetItem(st.name);
19      QTableWidgetItem *item2 = new QTableWidgetItem(QString::number(st.stNo));
20      QTableWidgetItem *item3 = new QTableWidgetItem(QString::number(st.average));
21      table->insertRow(row);
22      table->setItem(row, 0, item1);
23      table->setItem(row, 1, item2);
24      table->setItem(row, 2, item3);
25      row ++;
26    }
27    SecondWindow *secwin = new SecondWindow();
28    secwin->setCentralWidget(table);
29    secwin->show();
30    file.flush();
31    file.close();
32 }
