Die Suche ergab 160 Treffer

von techniker
06.12.2023 16:21
Forum: Allgemein
Thema: WinAPI: puColumns auswerten
Antworten: 15
Zugriffe: 621

Re: WinAPI: puColumns auswerten

Problem ist nun gelöst. Geschwindigkeit ist nun vergleichbar mit Excel und fast flüssig. Für die Allgemeinheit anbei nun in Auszügen die entsprechenden Codezeilen. Ich habe leider keine Zeit einen lauffähigen Beispiel-Code zu erzeugen. Wer jedoch das gleiche Problem hat, kann sich damit sicherlich a...
von techniker
06.12.2023 14:14
Forum: Allgemein
Thema: WinAPI: puColumns auswerten
Antworten: 15
Zugriffe: 621

Re: WinAPI: puColumns auswerten

Excel ist bei der Datenmenge zwar auch langsamer - aber immer noch deutlich schneller! Ich habe sowieso schon alles auf Virtual ListView umprogrammiert. Das war schonmal ein gewaltiger Geschwindigkeitssprung, da nun nur noch die sichtbaren Zeilen per Callback angefordert werden. Leider wird aber imm...
von techniker
06.12.2023 09:28
Forum: Allgemein
Thema: WinAPI: puColumns auswerten
Antworten: 15
Zugriffe: 621

Re: WinAPI: puColumns auswerten

Hallo H.Brill,

Es geht nicht nur um das Befüllen, sondern auch um das Scrollen (und programmatische bearbeiten per Callback).
Ein Standard-LIG mit >250MB Daten ist praktisch nicht mehr bedienbar.
von techniker
06.12.2023 07:26
Forum: Allgemein
Thema: WinAPI: puColumns auswerten
Antworten: 15
Zugriffe: 621

Re: WinAPI: puColumns auswerten

Sorry - Nein, ich nutze die Report-Ansicht. Ich hatte gehofft, dass die sichtbaren Spalten trotzdem mitgeliefert werden. Leider ist dem nicht so.. :-( Hast du eine Idee, wie ich (siehe Post vom 05.12. 15:21) das Neuzeichnen sonst noch optimieren könnte? Wie finde ich heraus, welche Spalten ich wirkl...
von techniker
05.12.2023 15:21
Forum: Allgemein
Thema: WinAPI: puColumns auswerten
Antworten: 15
Zugriffe: 621

Re: WinAPI: puColumns auswerten

Ok - ich frage mal anders herum: Kann ich im OwnerDraw-Callback herausfinden, ob die angefragten SubElemente (Zellen bzw. Spalten) überhaupt sichtbar sind? Wenn nein, brauche ich erst gar nicht weiterzumachen.. :-) Dadurch erhoffe ich mir nochmal etwas mehr an Geschwindigkeit. Die Tabelle ist bis zu...
von techniker
05.12.2023 14:00
Forum: Allgemein
Thema: WinAPI: puColumns auswerten
Antworten: 15
Zugriffe: 621

Re: WinAPI: puColumns auswerten

Danke für deine Hilfe.
Der Tip mit dem auslesen per PeekL hat mir gefehlt.. ;-)

Nächstes Problem: #LVIF_COLUMNS wird nicht gesetzt?!?
Hast du eine Idee, warum das so ist?
von techniker
05.12.2023 11:57
Forum: Allgemein
Thema: WinAPI: puColumns auswerten
Antworten: 15
Zugriffe: 621

Re: WinAPI: puColumns auswerten

cColumns kann aber lt. Doku nur max. den Wert 20 anzeigen: cColumns Typ: UINT Version 6.0 Anzahl der Datenspalten (Unterelemente), die für dieses Element in der Kachelansicht angezeigt werden sollen. Der Höchstwert ist 20. Wenn dieser Wert I_COLUMNSCALLBACK ist, werden die Größe des Spaltenarrays un...
von techniker
04.12.2023 18:46
Forum: Allgemein
Thema: WinAPI: puColumns auswerten
Antworten: 15
Zugriffe: 621

WinAPI: puColumns auswerten

Hallo, lt. https://learn.microsoft.com/de-de/windows/win32/api/commctrl/ns-commctrl-lvitema gibt die Struktur LVITEMA im Callback von einem LIG den Pointer auf ein Array zurück, welches die aktuell dargestellten Spalten in der entsprechenden Reihenfolge enthält. Soweit so gut. :) Aber irgendwie sitz...
von techniker
26.01.2023 07:44
Forum: Windows
Thema: Sichtbare Spalten in LIG
Antworten: 4
Zugriffe: 877

Re: Sichtbare Spalten in LIG

LVM_GETTOPINDEX LVM_GETCOUNTPERPAGE LVM_REDRAWITEMS Danke für die Antwort. Mit den LVM's bekomme ich aber nur die Zeilen - nicht die Spalten. Für mich wären aber genau die Spalten von Relevanz. Ich würde mir schon eine Verbesserung erwarten, da z.T. nicht beeinflussbare Nutzerdaten mit auch schon m...
von techniker
24.01.2023 10:35
Forum: Windows
Thema: Sichtbare Spalten in LIG
Antworten: 4
Zugriffe: 877

Re: Sichtbare Spalten in LIG

Anmerkung:

Beim einfügen einer neuen Zeile mache ich aktuell einfach ein

Code: Alles auswählen

InvalidateRect_(GadgetID(Gadget), 0, #True)
Dies bewirkt natürlich ein ineffektives neuzeichnen aller Spalten - auch der nicht sichtbaren.. :roll: