ExplorerTreeGadget-Anzeige ohne Dateiendung

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Das eigentliche Füllen muß im MainThread erfolgen, ansonsten passieren bei
viele Einträgen merkwürdige Dinge. Löschen erfolgt mittendrin statt am
Anfang, Icons fehlen oder sind verkehrt (er würferlt die Imagelist
durcheinander) usw. Alle Gadgets die sich auf dieses beziehen müssen auch
deaktiviert werden.

Abgesehen das Deine Variante schöner, flüssiger aussieht, ist sie viel zu
gefährlich. Das Gadget und alle Abhängigen deaktivieren und das füllen geht
auch wesentlich schneller, da nicht ständig neugezeichnet wird. Im Thread
kannste nur Vorbereitungen treffen. Ich lese ja erst in eine Linklist wegen
dem Sortieren, aber das ganze nimmt nur einen min. Bruchteil der
verbrauchten Zeit ein. Am längsten dauert das eigentliche Füllen, welches
bei deaktiviertem Gadget ein vielfaches schneller ist.

Sicher und Zeit sparen ist in Threads bei GUI-Elementen kaum möglich.
Dein Beispiel funktioniert ja so, aber da werden ja auch kaum Events
abgearbeitet, in einer realen Application mit wirklich vielen Einträgen
haste Chaos. Die Sache mit dem Memorycopieren, also das Gadget in
einem Rutsch neubefüllen sehe ich als einzig sinnvolle Alternative, wenn
ich bloß ne Idee hätte, wie man da an die Daten kommt und das ganze
umsetzt.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

Schon mal bei Thread mit 30000 probiert? Schmiert bei mir ab.

Mit HideGadget verstecken geht auf jeden fall schneller.

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
Shardik
Beiträge: 746
Registriert: 25.01.2005 12:19

Beitrag von Shardik »

dysti hat geschrieben:Hey,
wie kann ich das ExplorerTreeGadget dazu bringen, die Dateien in einem Verzeichnis ohne Dateiendung anzuzeigen.
Sparkie hat dies bereits einmal in einem älteren Beitrag für PB 3 im englischen Forum gezeigt (zusätzlich kann man auch Checkboxen ein- und ausblenden, bzw. auswerten):
http://www.purebasic.fr/english/viewtop ... 88&start=4
Benutzeravatar
dysti
Beiträge: 656
Registriert: 10.02.2006 18:34
Wohnort: Schlicktown

Beitrag von dysti »

Danke @Shardik, sowas ähnliches hatte ich gesucht.
PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9
Antworten