Deutsch
DLLs

FancyListview

 
- Seite 1 -



Jens-Arne
Reumschüssel
Hallo liebe Gemeinde,

ich hatte es satt, immer das entsprechende Subclassing neu zu schreiben, wenn ich mal eine GridBox (ein ListView) beliebig farbig formatiert dargestellt haben wollte. Da coded man sich einen Wolf. Daher habe ich mir jetzt die Mühe gemacht, das in einer DLL zusammenzufassen, sodass man nicht immerzu das Rad neu erfinden muss.



Da das ganze ziemlich komplex geraten ist (aber immer noch einfach zu bedienen, hoffe ich), konnte ich vermutlich nicht alle Konstellationen durchtesten. Es kann also durchaus sein, dass noch irgendwo etwas hakt. Ich hoffe aber, dass im großen und ganzen alles laufen sollte.

Es ist ein Code-Beispiel beigefügt, außerdem eine ausführliche chm-Hilfedatei.

Hier noch ein Screenshot aus dem Beispielprogramm:



weitere Features neben den Farben: beliebiges Icon in jeder Zelle, Checkboxen (bei Klick in das Kästchen der Überschrift werden alle Checkboxen der Spalte markiert oder geleert), Sortierung durch Klick auf Spaltenüberschrift nach Text oder nach Zahlen, auf- oder absteigend, Anpassung der Zeilenhöhe

Beste Grüße, Jens-Arne

1.214 kB
Bezeichnung:FancyListview-DLL
Version:1.21
Kurzbeschreibung: formatierte ListViews einfach erzeugen
Hochgeladen:26.08.2024
Ladeanzahl25
Herunterladen
256 kB
Bezeichnung:Beispielbild
Hochgeladen:26.08.2024
Ladeanzahl11
Herunterladen
275 kB
Bezeichnung:Beispielbild 2
Hochgeladen:27.08.2024
Ladeanzahl11
Herunterladen
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
26.08.2024  
 



 
- Seite 1 -



Georg
Teles
Nabend,

ich bin doof, das zu benutzen



Kriege das nicht zum Laufen, habe mit allen Versionen versucht und mit PHGen.exe von der LL extra eine .ph Datei erstellt, komme trotzdem nicht weiter.
 
Alle Sprachen
TC-Programming [...] 
XProfan 8.0 - 10.0 - X2 - X3 - X4

27.08.2024  
 




Gast.0815
Bei mir das gleiche !
Obwohl FLV_UserMessage_LeftClick=$8B00; in der .PH vorhanden ist.

System : Win7x64 ; Win10X64 ; XProfanX4
 
28.08.2024  
 




Jens-Arne
Reumschüssel
Hallo,

ich habe den Fehler gefunden. Tut mir leid, ich hatte mit JRPC3 getestet. Da ist es egal, in welcher Reihenfolge die $I- und $H-Dateien stehen, bei reinem Profan aber überhaupt nicht. Außerdem muss zusätzlich windows.ph eingebunden sein. Das ist jetzt korrigiert, neue Version ist hochgeladen. Bitte vollständig entpacken, die DLL selbst hat sich auch geändert, darin ist auch ein kleiner Fehler korrigiert worden.
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
28.08.2024  
 




Georg
Teles
Nabend, ah super, es funktioniert !

Eine Kleinigkeit habe ich noch, wie ich sehe, managest du auch die Breite der Spalten. Wenn man auf die Trennlinie zwischen den Spalten doppelt anklickt, scheint bei der Spalte 1 also Column 0, bei Spalte mit der CheckBox Column 1 sowie ab den Spalten Column 10 u. folgende die Breite nicht korrekt justiert zu werden, eventuell wird bei der Breite da nicht die Checkbox und Textlänge beachtet ?



Grüße
 
Alle Sprachen
TC-Programming [...] 
XProfan 8.0 - 10.0 - X2 - X3 - X4

29.08.2024  
 




Jens-Arne
Reumschüssel
Huch, das ist ja seltsam. Das dürfte von Windows kommen, offenbar wird bei so einem Doppelklick (den ich bisher nicht kannte) die Spaltenbreite neu eingestellt. Da Windows nichts von den Checkboxen und Icons weiß, wird das offenbar zu klein eingestellt. Hast Du eine Ahnung, ob es da eine bestimmte Message gibt, die man abfangen könnte? Es gibt ganz sicher eine, kann ich mir gar nicht anders vorstellen. Ich bin allerdings ab morgen eine Woche im Urlaub, ich werde mir das vorher nicht vornehmen können.

EDIT: Das hier dürfte es sein: [...] 

Ich werde nach meinem Urlaub sehen, ob ich das Problem damit in den Griff bekomme. Sieht nach erstem Durchlesen gut aus. Heute fummel ich da aber lieber nicht mehr dran rum. Die Subclass-Proc, die die Einfärbungen etc. vornimmt, hat im Moment exakt 1.731 Zeilen. Da muss man sich etwas Zeit nehmen, um die richtigen Änderungen vorzunehmen. Was für ein Wahnsinn, was Microsoft einem aufbürdet, nur um ein Listview ein bisschen farbig zu gestalten!

Was mir allerdings ein bisschen Sorgen macht, ist der Umstand, dass es bei dieser Notify-Message keinen Return-Code gibt. Man kann Windows also nicht sagen, dass es die Finger davon lassen soll, auf diesen Doppelklick zu reagieren. Wir werden sehen, was daraus wird, insbesondere, ob die Windows-Änderungen vor meinen eigenen kommen, oder danach. Im ersteren Fall wäre die Sache in den Griff zu bekommen.
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
29.08.2024  
 




Jens-Arne
Reumschüssel
Bitte nochmal testen, der Doppelklick auf die Spaltentrenner funktioniert jetzt hoffentlich.
 
XProfan X4
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
04.09.2024  
 




Jens-Arne
Reumschüssel
V1.12:
Konstante FLV_StandardColor_Windows für DLL-Funktion CPSSetStandardColor (in inc: FLVCPSSetStandardColor) hinzugefügt für Windows-Standardaussehen, das bisher vor lauter Überschwang fehlte.
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
07.09.2024  
 




Georg
Teles
Nabeeend,

sry ich war eine Weile weg ... funktioniert einwandfrei TOP DLL !

Grüße
 
Alle Sprachen
TC-Programming [...] 
XProfan 8.0 - 10.0 - X2 - X3 - X4

09.10.2024  
 



Unterthema: Extrem viel Ram Bedarf pro mit einem Listview ca. 1GB Ram??  [...]  erzeugt.
 
vor 13 Tagen  
 




Axel
Berse
Extrem viel Ram Bedarf pro mit einem Listview ca. 1GB Ram??

39 kB
Hochgeladen: vor 13 Tagen
Ladeanzahl3
Herunterladen
 
vor 13 Tagen  
 




Jens-Arne
Reumschüssel
Das war ein Tradeoff zwischen Geschwindigkeit und Speicherbedarf. Allerdings ist 1 GB für ein FancyListview vielleicht doch etwas viel. Ich muss nochmal sehen, ob ich da einen sinnvolleren Kompromiss finden kann. Das Problem ist, dass es ziemlich lange dauert, die vordefinierte Anzahl an Zeilen zu erhöhen, da jeweils der gesamte Speicher im Rahmen eines ReDims mehrerer Arrays umkopiert wird. Das Listview wird also nur langsam gefüllt, wenn das z.B. alle 100 Zeilen geschieht. Daher habe ich einen hohen Defaultwert für die Zeilenanzahl benutzt. Wenn Ihr aber meint, dass man sowieso kaum jemals 100 Zeilen erreicht, könnte ich das durchaus auf 100 Zeilen oder so einstellen. Das würde sich extrem auf den initialen Speicherbedarf auswirken.
 
XProfan X4
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
vor 12 Tagen  
 



 
- Seite 2 -



Jens-Arne
Reumschüssel
Ok, ich habe jetzt eine Version hochgeladen, bei der ein zweiter Parameter bei FLVInit angibt, wie viele Listview-Zeilen beim Start der DLL angelegt werden sollen. Wenn man nur sehr kleine Listviews mit wenigen Zeilen benutzt, kann man dort z.B. 100 oder noch weniger angeben. Der Speicherbedarf sinkt dadurch rapide. Wenn man dann allerdings 10.000 Zeilen hinzufügen möchte, wartet man ewig, bis die Zeilen gefüllt wurden. Es ist also sinnvoll, dort eine Zahl anzugeben, die in etwa der höchsten zu erwartenden Zeilenzahl während des Programmablaufes entspricht. Wenn man nichts angibt, wird von der INC-Datei 100 vorgewählt.
 
XProfan X4
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
vor 12 Tagen  
 




Zur DLL


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

761 Betrachtungen

Unbenanntvor 0 min.
Gast.0815 vor 12 Tagen
Jens-Arne Reumschüssel vor 12 Tagen
ByteAttack vor 12 Tagen
Jürgen Strahl vor 13 Tagen
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie