1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
lab = new Labyrinthe(tailleX, tailleY, coordXRobot, coordYRobot);
gridLayout->setSpacing(0);
gridLayout->setMargin(0);
gridLayout->setContentsMargins(0, 0, 0, 0);
// C'est cette ligne qui provoque le bug, mais sans elle, mes cases du gridLayout ne sont pas collé entre elles.
gridLayout->setSizeConstraint(HeritQLayout::SetFixedSize);
// Faire boucle de création de laby
// On inverse x et y car on affiche les lignes une par une en les lisant
for(int y = 0; y < tailleY ; y++)
{
gridLayout->setRowMinimumHeight(y,20);
for(int x = 0 ; x <tailleX ; x++)
{
gridLayout->setColumnMinimumWidth(x,20);
in >> valeurLu;
// Chemin
if (valeurLu == 0)
{
carreBlanc.push_back(new ZoneDessin(ui->labyrinthe, 0, 0, 255, 255, 255));
// On ajoute le dernier carre créer au grid layout du widget labyrinthe
gridLayout->addWidget(*(carreBlanc.end()-1),x,y,1,1);
}
else if (valeurLu == 1) //mur
{
carreNoir.push_back(new ZoneDessin(ui->labyrinthe,0, 0, 0, 0, 0));
// On ajoute le dernier carre créer au grid layout du widget labyrinthe
gridLayout->addWidget(*(carreNoir.end()-1),x,y,1,1);
}
else if (valeurLu == -1)
{
ZoneDessin *p = new ZoneDessin(ui->labyrinthe, 0, 0, 255, 0, 0);
// Et l'ajoute au grid layout du widget labyrinthe
gridLayout->addWidget(p,x,y,1,1);
}
}
}
ui->labyrinthe->setLayout(gridLayout); |
Partager