Qt parę pytań o QListView

Odpowiedz Nowy wątek
2011-10-22 22:05
student
0

Witam

Tworzę program głównie opierający się na QListView, mianowicie z pliku txt wczytuje do listy obiektów dane, następnie w QListView umieszczam zmienną nazwa która jest częścią każdego obiektu :
(ogólnie kod ma jakieś ~ 700 lini wkleje co najważniejsze)

for (int i = 0; i<obiekt.size(); i++)
    {
        list << obiekt[i].nazwa;

        model->setStringList(list);
        ui->Try->setModel(model); // Try czyli QListView

    }
// w pliku .h
QStringListModel *model;
QStringList list;
// w konstruktorze
model = new QStringListModel(this);

Program ma działać tak aby po kliknięciu na daną nazwę w QListView umieścił resztę zmiennych w innych widgetach.

czyli :

void MainWindow::on_Try_doubleClicked(const QModelIndex &index)
{
         // np.
         int i = index.row();
         ui->spinBox_1->setValue(obiekt[i].numer);
}

Wszystko działa dobrze, poza tym że dodaje mi spację zawsze gdy wczytuje QString do QLineEdit ale to mało ważne :)

Problem w tym że np. jeśli chce wczytać 2 plik to wypadało by wyczyścić QListView, albo jestem ślepy albo w dokumentacji nie ma jakiegoś prostego rozwiązania.

Drugi problem taki że np. usuwam jakiś obiekt z listy i też chcę aby został usunięty z QListView...czyli usuwanie pojedynczych obiektów...

Nie wiem czy w ogole użycie QStringListModel jest najlepszym pomysłem do tego typu rzeczy ?

Pozdrawiam

Pozostało 580 znaków

2011-10-22 22:45
0

Dokumentacja w Assistancie->Model/View Programming i czytać od dechy do dechy,zwłaszcza na temat resizable models,update() oraz reset()


"Sugeruję wyobrazić sobie Słońce widziane z orbity Merkurego, a następnie dupę tej wielkości. W takiej właśnie dupie specjalista ma teksty o wspaniałej atmosferze, pracy pełnej wyzwań i tworzeniu innowacyjnych rozwiązań. Pracuje się po to, żeby zarabiać, a z resztą specjalista sobie poradzi we własnym zakresie, nawet jeśli firma mieści się w okopie na granicy obu Korei."
-somekind,
konkretny człowiek-konkretny przekaz :]

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0