Aktuelle Zeit: 26.05.2020 15:10

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 73 Beiträge ]  Gehe zu Seite Vorherige  1 ... 3, 4, 5, 6, 7, 8  Nächste
Autor Nachricht
 Betreff des Beitrags: Re: [Module] Editier- und sortierbares ListenGadget (All OS)
BeitragVerfasst: 22.09.2019 20:37 
Offline
Benutzeravatar

Registriert: 10.09.2004 09:59
Die Performance ist leider ziemlich schlecht!
Ich habe einen Timer, der alle 100ms einzelne Zellen neu setzt.
Dabei kann es durchaus (eigentlich eher die Regel) vorkommen, dass der Inhalt derselbe ist wie vorher.
Windows scheint hier cleverer zu sein, und scheint solche Anfragen zu ignorieren.
ListEx aber bremst das Programm dermassen aus, dass der Timer verspätet erst aufgerufen wird, ich denke mal, da wird jedes mal das ganze Gadget neu aufgebaut.

Kannst Du da performancetechnisch noch was rauskitzeln?

_________________
Link tot?
Ändere h3x0r.ath.cx in hex0rs.coderbu.de und alles wird gut.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] Editier- und sortierbares ListenGadget (All OS)
BeitragVerfasst: 24.09.2019 22:25 
Offline
Benutzeravatar

Registriert: 10.09.2004 09:59
Ich habe mich versucht da hineinzuarbeiten, muss aber leider aufgeben, das wird zu zeitintensiv, das ist teilweise ziemlich verschachtelt.
Mein Problem habe ich erstmal so gelöst, dass ich erst die Zelle auslese, mit dem zu setzenden Text vergleiche, und nur bei einer Änderung die Zelle neu beschreibe.

Aber grundsätzlich denke ich, das folgende sollte (irgendwie) möglich sein?

- Du könntest jeder Zelle ein Changed Flag mitgeben, das gesetzt wird, wenn irgendein State oder Text verändert wird.
- FitColumns_() so bearbeiten, dass es erst schaut, ob sich die Breite verändert hat, bevor es die einfach stur setzt. Dann könnte man auch ein "WidthChanged" o.ä. setzen
- Beim Draw_() könnte man dann, wenn z.B. WidthChanged gesetzt ist, alles neu zeichnen, wenn nicht, nur die veränderten Zellen überschreiben.

Wird wahrscheinlich nicht ganz so simpel, wie hier dargestellt, soll auch nur ein Denkanstoss sein ;)

_________________
Link tot?
Ändere h3x0r.ath.cx in hex0rs.coderbu.de und alles wird gut.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] Editier- und sortierbares ListenGadget (All OS)
BeitragVerfasst: 25.09.2019 08:23 
Offline
Benutzeravatar

Registriert: 04.02.2005 15:40
Wohnort: Kaufbeuren
Bei meinem Beispiel liegt die Zeit für das Neuzeichnen bei 2-8ms.

Aber mit dem Ansatz nur bei geändertem Text das Gadget neu zu zeichnen, lässt sich etwas anfangen.
Ich habe SetCellText() und SetItemText() entsprechend abgeändert.

Ich hoffe, es funktioniert für dich.

PS:
FitColumns_() wird nur ausgeführt, wenn das entsprechende Flag gesetzt ist und es werden nur Berechnungen zur Spaltenbreite vorgenommen und keine Zeichenoperationen ausgeführt. Ob die neu Spaltenbreite gesetzt wird oder nicht macht keinen Unterschied, da diese erst mit dem nächsten Draw_() - Befehl ausgewertet wird und dem ist es im Grunde egal, ob sich die Breite geändert hat oder nicht.

_________________
Download der Module
Download der Programme

Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] Editier- und sortierbares ListenGadget (All OS)
BeitragVerfasst: 25.09.2019 13:02 
Offline
Benutzeravatar

Registriert: 10.09.2004 09:59
Ich probier das die Tage mal, Danke!

Wegen dem FitColumn_():
Das Problem ist, dass ich das Flag #FitColumn brauche, weil es scheinbar bei Deinem ListEx keine Möglichkeit gibt, die Spaltenbreite nachträglich per Maus zu verändern (oder ich bin nur zu doof).
Wenn aber die Funktion so clever wäre, zu bemerken, dass sich gar nichts verändert hat, wäre ein Neuzeichnen unnötig.

_________________
Link tot?
Ändere h3x0r.ath.cx in hex0rs.coderbu.de und alles wird gut.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] Editier- und sortierbares ListenGadget (All OS)
BeitragVerfasst: 16.10.2019 16:56 
Offline
Benutzeravatar

Registriert: 04.02.2005 15:40
Wohnort: Kaufbeuren
Update: Drag & Drop für editierbare Zellen (Text)

_________________
Download der Module
Download der Programme

Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] Editier- und sortierbares ListenGadget (All OS)
BeitragVerfasst: 17.10.2019 08:06 
Offline
Benutzeravatar

Registriert: 04.02.2005 15:40
Wohnort: Kaufbeuren
Update:
  • Bugfix: Font
  • Drag & Drop: Einfügen eines Leerzeichens, wenn die Zelle bereits Text enthält

_________________
Download der Module
Download der Programme

Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] Editier- und sortierbares ListenGadget (All OS)
BeitragVerfasst: 26.10.2019 18:57 
Offline
Benutzeravatar

Registriert: 04.02.2005 15:40
Wohnort: Kaufbeuren
Update:
  • Added: SetCellFlags() / RemoveCellFlag()
  • Flags: #LockCell / #Strings / #ComboBoxes / #Dates

_________________
Download der Module
Download der Programme

Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] ListEx - Gadget(All OS)
BeitragVerfasst: 02.11.2019 12:56 
Offline
Benutzeravatar

Registriert: 04.02.2005 15:40
Wohnort: Kaufbeuren
Update: Spaltenbreite mit der Maus ändern (#ResizeColumn)

_________________
Download der Module
Download der Programme

Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] ListEx - Gadget(All OS)
BeitragVerfasst: 11.11.2019 18:56 
Offline
Benutzeravatar

Registriert: 04.02.2005 15:40
Wohnort: Kaufbeuren
Update: Added: CSV support (file/clipboard)

_________________
Download der Module
Download der Programme

Bild


Zuletzt geändert von Thorsten1867 am 11.11.2019 18:57, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: [Module] ListEx - Gadget(All OS)
BeitragVerfasst: 11.11.2019 18:57 
Offline
Benutzeravatar

Registriert: 04.02.2005 15:40
Wohnort: Kaufbeuren
Update: Added: CSV - Unterstützung(Datei/ClipBoard)

_________________
Download der Module
Download der Programme

Bild


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 73 Beiträge ]  Gehe zu Seite Vorherige  1 ... 3, 4, 5, 6, 7, 8  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye