October 25, 2011

Robert B. Robert B.
Lab Rat
7 posts

Geschwindigkeitsprobleme und Probleme allgemein beim öffnen von Dateien

 

Hallo.
Ich habe ein Projekt das schon etwas weiter fortgeschritten ist.
Ich Verwende das Model/View Konzept und befülle das ganze mit einem DirModel + Modelindex.
Ich habe damit 3 View’s + eine Combobox realisiert.

Die Reinfolge ist Combobox/ListView/TreeView/ListView.

Die Combobox bekommt seinen rootPath und danach bekommt der jeweils folgende View seinen rootPath vom vorherigen. Je nach dem was ausgewählt wurde wird der ModelIndex ausgelesen und um die Ecke zum String umgewandelt der dann als rootPath im nächsten View eingesetzt wird.

Nun habe ich das Problem, bei dem DirModel, ModelIndex oder eventuell auch bei den View’s, das es zu Geschwindigkeitseinbrüchen kommt. Um so öfter das Verzeichniss wechselt welches dargestellt werden soll, desto länger wird die Zeit bis die Ansicht im jeweils nächsten View aktuallisiert wird.

Ich vermute nun das irgendwo eine Liste versteckt ist die immer größer wird und aufgrund dessen wird alles langsamer.
Außerdem habe ich das Problem wenn ich eine Datei öffnen will. Je nach dem wie oft das Verzeichniss gewechselt wurde ,so oft wird auch die Datei geöffnet. Wenn ich z.B. 3 mal das Verzeichniss wechsel, dann öffnet sich die Datei die ich ausgewählt habe auch 3 mal.

Ich habe schon diverse Ideen verfolgt um einen “reset” oder wie bei der ComboBox ein “clear” durchzuführen aber bisher ohne Erfolg.

Hoffe mir kann jemand auf die Sprünge helfen..

Robert..

2 replies

October 26, 2011

Gerolf Gerolf
Hobby Entomologist
3251 posts

Hi,

warum verwendest du QDirModel? AFAIK ist das depricated.
Hast du das ganze mal mit QFileSystemModel ausprobiert?

 Signature 

Nokia Certified Qt Specialist.
Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

November 2, 2011

Robert B. Robert B.
Lab Rat
7 posts

Ich habe versucht mit dem QFielSystemModel zu arbeiten. Leider habe ich die Funktion nicht gefunden die ich für meine Arbeit brauche.

Die Lösung zu meinem Problem war eigendlich rellativ einfach…

Ich habe jeden View mit einem connect an den nächsten View verwiesen.
Die connects waren dabei in der jeweiligen Methode realisiert.
Nachdem ich alle connects in die Mainmethode verschoben, und alle dopelten entfernt habe, lief alles ohne Geschwindigkeitseinbrüche oder mehrfach geöffnete Dateien.

Danke für den Tip mit dem QFileSystemModel..

 
  ‹‹ ix-Artikel: Portierung auf Mobilgeräte mit QtQuick      error C2248: ’QDomNodeList::QDomNodeList’ : cannot access private member declared in class ’QDomNodeList’ ››

You must log in to post a reply. Not a member yet? Register here!