Metoksyfenidyna9
Treść przeznaczona dla osób powyżej 18 roku życia...
  • Najlepsze
  • Wszystkie komentarze
lionbest
@Metoksyfenidyna9:
Ad 1. Jak korzystasz z QWidgetów to QStringListModel przypięty do QListView.
Ad 2. Masz metodę QString::mid która działa jak std::string:substr.

Jest jeszcze opcja najlepsze i najbardziej oszczędna, zrobienie własnego QAbstractListModel, który przechowuje tylko sam bufor pliku. QAbstractListModel::data będzie zwracać tylko sformatowaną linijkę, z adresem na samym początku tylko wtedy kiedy QListView o niego poprosi.

Ogarnięcie QAbstractItemModel wymaga trochę nauki i czasu, ale pomaga pisać zgodnie ze wzorcem MVC.
lionbest
@Metoksyfenidyna9: Nie, to się robi zupełnie inaczej.
Najpierw z przeładowanej metody QAbstractItemModel::flags zwracasz że dany element jest edytowalny.
QListView gdy przechodzi do edycji (standardowo dwuklik) elementu tworzy nowy Widet do edycji, pobiera z modelu rolę Qt::EditRole, zamiast Qt::DisplayRole, dzięki temu możesz zwrócić same hexy bez prefixu, a po edycji wykona na twoim modelu setData, gdzie możesz podmienić w buforze sobie tylko te bajty dla danej linijki.
A.....k
A.....k
Treść przeznaczona dla osób powyżej 18 roku życia...
Metoksyfenidyna9
@lionbest: Tylko czy przy opcji z QAbstractListModel musiałbym wtedy analogicznie napisać coś co przy zapisie do pliku (po jego edycji) będzie usuwać wtedy ten początek tak?
Metoksyfenidyna9
@lionbest: dzięki
lionbest
@Metoksyfenidyna9: Ogólnie ogarnij QAbstractItemModel, bo to służy do wszystkiego, Listy, Tablice i Drzewa wszystko jednym modelem jest zrobione. Trochę czytania będzie, ale naprawdę super się z tego korzysta.
h.....s
h.....s
@Metoksyfenidyna9: Dołączam się do pytania nr 3. Mam taką 30 yo - nie wiem czy już pić a może czekać aż się bardziej zestarzeje ( ͡° ͜ʖ ͡°)