Hej, mam layout w którym chcę dynamicznie dodawać i usuwać przycisk wraz ze znajdującym się obok niego polem. Napisałem coś takiego:
MainWindow::MainWindow()
{
resize(500,300);
QLineEdit *edit = new QLineEdit;
QPushButton *one = new QPushButton(tr("Dodaj"));
connect(one,SIGNAL(clicked()),this,SLOT(addLine()));
layout = new QFormLayout;
layout->addRow(edit,one);
setLayout(layout);
}
void MainWindow::addLine() {
QLineEdit *line = new QLineEdit;
QPushButton *button = new QPushButton(tr("Usun"));
connect(button,SIGNAL(clicked()),this,SLOT(removeLine()));
buttons.push_back(qMakePair(line,button));
layout->addRow(buttons.last().first,buttons.last().second);
}
void MainWindow::removeLine() {
layout->removeWidget(buttons[2].first);
layout->removeWidget(buttons[2].second);
buttons.remove(2);
}
Działa, w tej chwili usuwa zawsze wiersz drugi, natomiast chciałbym aby usuwało ten wiersz w którym został kliknięty przycisk Usuń. Krótko mówiąc, nie wiem w jaki sposób wyciągnąć index odpowiedniego wiersza.