Da XProfan bisher etwas stiefmütterlich mit ListViews um geht (in XProfan Gridboxen genannt), habe ich mich mal der Sache angenommen und präsentiere hier eine Inc, die einiges erweitert. Bisher funktionieren Gruppen, Kacheln und Icons/Bilder, aber einiges wird noch folgen. Die Inc erhebt keinen Anspruch auf Vollständigkeit und befindet sich noch in der Alpha-Phase. Sie benötigt XProfan X4, aber jeder kann selbst schauen was zu ändern ist, wenn man eine ältere XProfan-Version hat. Die Funktionen sollten ab Windows Vista funktionieren, alles was davor kommt wird nicht offiziell unterstützt. Version 0.1.0.
ListView.inc
-
-
-
Update auf Version 0.1.2:
Nur kleine Fehlerbehebungen. Neue Funktionen folgen später. -
Update auf Version 0.1.3:
- Fehlerbehebungen
- Neue Funktionen um Textfarbe, Texthintergrundfarbe und Hintergrundfarbe einzustellenBitte beachten: Die Inc steckt noch in den Kinderschuhen und es nur ein Teil der Möglichkeiten, die uns Windows per API bereitstellt, umgesetzt.
-
Update auf Version 0.2.0:
- Neue Spaltenfunktionen: DeleteColumn, GetColumnText, GetColumnWidth, InsertColumn, SetColumnText, SetColumnWidth
- Neue Gruppenfunktionen: CountGroups, DeleteAllGroups, DeleteGroup
- Weitere neue Funktionen: DeleteEx, ShowItem, SortWeiteres folgt...
-
Update auf Version 0.2.1:
- Neue Checkboxfunktionen: EnableCheckboxes, GetCheck, SetCheck
- Erweiterung der Funktion Create mit der Unterfunktion "ListView", kompatibel zu Create("Gridbox",...)
- Bugfix für EnableImagesViel Spaß!
-
Update auf Version 0.2.2:
- Neue Funktionen: CountColumns, GetGroupFocus, GetGroupInfo, GetBkColor, GetTextBkColor, GetTextColor
- Erweiterung von Sort
- Erweiterung des Containers Create mit dem Schlüsselwort "ListView". 100% kompatibel mit "Gridbox", aber mit mehr Optionen.
- Kleine Bugfixes und Optimierungen -
Update auf Version 0.2.3:
- Neue Funktionen: GetView, SetView, AddItem -
Update auf Version 1.0.8:
- Neue Funktionen: HasGroup, HasGroups, IsVisible, SetBkImage
- Nicht kompatibel erweitert: CreateGroup, jetzt mit zweiter Zeile im Titel. Dazu muss jeder Quellcode, der CreateGroup verwendet, angepasst werden (1 zusätzlicher Parameter).
- Voll kompatibel erweitert: EnableGroups
- Aufgeräumt und optimiert: CleanUp,EnableGroups, Sort -
Du bist ja unermüdlich! Tolles Weihnachtsgeschenk - Danke!
-
Du bist ja unermüdlich! Tolles Weihnachtsgeschenk - Danke!
Dankeschön. Und euch allen natürlich auch.
Und keine sorge, mein Weihnachten beginnt morgen und vor dem 2. Januar bin ich fast nur für die Familie da. -
Update auf Version 1.0.9:
- Die Information wie Kacheln angezeigt werden wird ab jetzt für jedes ListView separat gspeichert und man muss nicht mehr dazwischen umschalten. Dazu wurde der Befehl PrepareTileView entfernt. Man kann jetzt mit SetView auf die Kachelansicht umstellen.
- Die Kachelansicht wurde etwas erweitert, siehe SetTileViewKurze Frage an die Experten (ich habe noch nicht viel mit dynamischen Arrays gearbeitet): Kann ich einem dynamischen Array einen dynamischen Speicherbereich zuordnen, in etwa so:
-
So würde es gehen:
Codestruct a=a&,a$(32),a#[] struct b=a&,b&,c& struct c=a&,b&,c&,d&,e& declare a#[] a#[10] = new(b) a#[10].a&=1024 a#[11] = new(c) a#[11].e&=2048
Mit DIM a#,a bekommen alle Elemente die Struktur a. Das willst Du hier ja nicht. Mit New (siehe Hilfe) kannst Du jedem Element des Arrays eine andere Struktur oder eine andere Klasse zuweisen.Gruß
Roland -
Ei genial, danke. Das wird die Verwaltung der Kacheln stark beschleunigen. Danke Roland, das habe ich wohl in der Hilfe falsch interpretiert. Ich habe zwar gelesen, dass New() darauf anwendbar ist, aber es nicht so verstanden.
Kann ich auch den Bereich a#.a# unterschiedlich dimmen, also:?
-
-
Update auf Version 1.0.11:
- Bugfix für GetTextBkColor (vergessenes Leerzeichen )
- Optimierungen für EnableImages -
Ei genial, danke. Das wird die Verwaltung der Kacheln stark beschleunigen. Danke Roland, das habe ich wohl in der Hilfe falsch interpretiert. Ich habe zwar gelesen, dass New() darauf anwendbar ist, aber es nicht so verstanden.
Kann ich auch den Bereich a#.a# unterschiedlich dimmen,Nein das geht nicht. Bereiche in der Struktur funktionieren anders, als normale Bereichsvariablen. Du musst dort in den eckigen Klammern weiterhin die Größe des Bereichs in Bytes angeben.
Gruß
Roland -
Update auf Version 1.0.12:
- Bugfix für Create("ListView", Cleanup und EnableImages
- Optimierungen für CreateGroup (EnableGroups nicht mehr nötig) und ein paar andere Funktionen -
Update auf Version 1.0.13:
- Optimierungen für SetTileMask und SetTile. Da ich den Veränderungen noch nicht über den Weg traue habe ich die alten Versionen noch als Kommentar angehängt. Wenn sie sich als ausreichend stabil erweisen werde ich sie wieder entfernen. -
Update auf Version 1.0.14:
- Bugfix und Erweiterung für Create("ListView", außerdem standardmäßig aktiviertes DoubleBuffering (=deutlich weniger Flackern)
- Allgemeine Verbesserungen und Optimierungen
- Neue Funktionen GetHoverTime und SetHoverTimeroland:
Mittelsbzw. dem entsprechenden ExtendedListViewStyle LVS_EX_DOUBLEBUFFER wird im ListView das DoubleBuffering eingeschaltet, das das Flackern drastisch reduziert. Vielleicht könntest du das bei der Gridbox zum Standard machen.
-
Update auf Version 1.0.15:
- Bugfix und Erweiterung für Create("ListView", noch einmal... -
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!