我有一个名为“学生”的班级(此班级有表格) 在我的MainWindow中,我有一个来自这个班级的QVector! 现在我想要展示QVector每个成员的形式,但我不能! (我这样做是因为我希望任何学生都有自己的特殊页面!Witch保存任何特殊的变化为自己) 这是我的代码:
在我的主窗口中:
StHead = new QVector <Student> ;
void MainWindow::StudentSignIn (QString User,QString Pass)
{
///////Sign in things !
int index = StudentSearch(User);
Student* at = StHead->data();
if (at[index].GetPass() == Pass)
emit Hide_StuLog();
qDebug()<<"This Slot happens";
(*StHead)[index].show();
}
但是,当它显示时,它是一个空页! 有什么问题?!我正在做什么甚至可能?!
这也是我如何将会员添加到我的QVector
void MainWindow::StudentAdder(Student s)
{
StHead->append(s);
}
答案 0 :(得分:0)
好的,很多事情都不是好的做法:
QVector<Student> * StHead;
的向量,而应直接使用QVector<Student> StHead;
QVector<Student *> StHead;
data()
进行的调用对于眼睛来说相当痛苦;)StHead[index]->show()
时,请确保要显示的小部件的父级已经可见,除非它没有父级(如果您不确定,请致电StHead[index]->parent()
。)