Próbuję napisać implementację pancernika w Qt i używam dwóch QGridLayouts do przechowywania QToolButtons, które służą do reprezentowania siatki graczy. Układ najwyższego poziomu (QMainWindows) to QHBoxLayout. Co chcę osiągnąć, to usunąć odstępy między tymi przyciskami. Jak to wygląda w tej chwili:Qt QGridLayout - usuwanie odstępów między pozycjami
To na pewno nie jest ładna. Dodaję elementy do takich układów:
QIcon icon;
icon.addFile(QStringLiteral(":/images/Resources/field_blue.png"), QSize(), QIcon::Normal, QIcon::Off);
for (int i = 0; i < dimensions; ++i)
{
for (int j = 0; j < dimensions; ++j)
{
QToolButton* buttonLeft = new QToolButton(this);
buttonLeft->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
buttonLeft->setText(QString::number(i) + "-" + QString::number(j));
buttonLeft->setFixedSize(FIELD_ICON_SIZE + 10, FIELD_ICON_SIZE + 10); // FIELD_ICON_SIZE -> 20
buttonLeft->setIcon(icon);
buttonLeft->setIconSize(QSize(FIELD_ICON_SIZE, FIELD_ICON_SIZE));
buttonLeft->setAutoRaise(true);
QToolButton* buttonRight = new QToolButton(this);
buttonRight->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
buttonRight->setText(QString::number(i) + "-" + QString::number(j));
buttonRight->setFixedSize(FIELD_ICON_SIZE + 10, FIELD_ICON_SIZE + 10);
buttonRight->setIcon(icon);
buttonRight->setIconSize(QSize(FIELD_ICON_SIZE, FIELD_ICON_SIZE));
buttonRight->setAutoRaise(true);
_ui.gridLayoutLeft->addWidget(buttonLeft, i, j);
_ui.gridLayoutRight->addWidget(buttonRight, i, j);
}
}
Mogę spróbować użyć przekładek, ale pozostawiają puste miejsca, co również nie jest pożądane.
'QGridLayout :: setSpacing (0)'? –
@RetiredNinja Wygląda tak, teraz - http://i.imgur.com/Of7Qjf7.png – Venom
Jaki jest twój cel? – mhcuervo