KontaktImpressumAGBDatenschutzerklärung
sitelogo

Versions-Historie zu
picoware Treeview für Microsoft Access


Version vom 02.12.2021


Bei einem Kunden lief die Popup-Auswahlliste immer in einen Fehler. Wie sich herausstellte, dauerte der Aufruf des Popup-Formulars dort (aufgrund lokaler Gegebenheiten) so lange, dass das Timeout des Popup-Formulars bereits abgelaufen war, bevor es angezeigt wurde. Wir haben den Start des Timers an eine andere Stelle im Code verschoben, sodass er erst zu laufen anfängt, wenn die anzuzeigenden Daten sicher geladen sind.

Die Popup-Auswahlliste kann jetzt auch einen Skalierungsfaktor für die Breite des Fensters erhalten. Bei breiteren Texten kann so verhindert werden, dass diese rechts abgeschnitten werden.


Version vom 12.11.2020


Mit der Einführung des BigInt als neuem Datentypen gibt es auch eine neue Jet-Version (16.7). Diese musste als Konstante nachgepflegt werden, um in Datenbanken mit Nutzung der BigInt-Option temporäre Datenbanken erzeugen zu können.

In der Textbox, die auf dem Manual-Formular angezeigt wird, kann jetzt mit dem Mausrad gescrollt werden.


Version vom 23.07.2020


...DoEvents ergänzt, um einen Fehler beim Umschalten des Cursor-Symbols zu beheben.


Version vom 06.07.2020


Behebt das Problem des scheinbaren Hängens der gesamten Applikation. Verursacht wurde das durch ein Formular, das den Bildschirminhalt als Kopie über den Treeview blendet, um darunter in Ruhe zeichnen zu können. Unter bestimmten Umständen wurde dieses modale Formular nicht mehr geschlossen und blockierte die weiteren Eingaben.


Version vom 04.06.2020


Bugfixes


Version vom 17.01.2020


Bugfixes


Version vom 12.11.2019


Mit dieser Version veröffentlichen wir zwei Fixes, die uns schon lange auf den Nägeln gebrannt haben.


Kein Flackern mehr in Acc2016++

Das Flackern in Access ab Version 2016 ist behoben. Aufgrund veränderter Handhabung von Grafiken in Acc2016++ dauert das Neuzeichnen des Treeviews so lange, dass der Zeichenvorgang bei langen Formularen als Flackern zu erkennen war. Ab der vorliegenden Version verwenden wir ein Popup-Formular, das den Bildschirmausschnitt des Treeviews vor dem Neuzeichnen kopiert und so lange anzeigt, bis das Zeichnen abgeschlossen ist. Damit ist das Flackern behoben.


Multiscreen-Positionierung gefixt

Popup-Menüs und das Icon bei Drag&Drop wurden bisher mit Docmd.MoveSize an ihre Position verschoben. Damit war eine korrekte Positionierung nur auf dem Hauptbildschirm möglich. Ab dieser Version positionieren wir die Formulare über API-Calls und können somit auch Multiscreen-Systeme richtig bedienen.


Version vom 04.04.2019



Diverse Fixes und kleine Verbesserungen

Diese Version enthält diverse Fehlerkorrekturen und Verbesserungen, die in den letzten beiden Jahren in den Treeview eingeflossen sind und die nach so langer Zeit einfach mal bereitgestellt werden müssen. Ein paar größere Ideen stehen noch auf der Liste - mit deren Veröffentlichung gibt es dann auch wieder eine umfangreichere Änderungsdokumentation.
Bitte seien Sie achtsam, wenn Sie die neue Version in bestehende Projekte übernehmen - machen Sie Backups und Tests.


Version vom 29.06.2017



Variablen des TV persistiert

Wenn im Code ein Reset gemacht wird (manuell beim Testen oder durch selbst-modifizierenden Code), gehen die Inhalte sämtlicher Variablen verloren. Danach traten im TV Fehler auf, weil u.A. der Name der TV-Tabelle nicht mehr bekannt war.
Der TV speichert seine Properties nun in versteckten Feldern auf dem Formular und lädt sie bei Bedarf von dort zurück. Für das erneute Setzen der WithEvents-Variablen auf das TV-Unterformular bleibt aber der Programmierer des Host-Formulars verantwortlich.



Error-Handler weniger dramatisch gestaltet

Die Demo hat vorwiegend die Aufgabe, Konzepte und Funktionalitäten des TV zu erläutern und Ihnen einen Startpunkt für die Arbeit mit dem TV bereitzustellen. So haben wir uns nicht für jeden möglichen Fehler eine ausgeklügelte Behandlungsroutine ausgedacht, sondern geben oft einfach nur eine Meldung aus.
Diese Meldung hat in verschiedenen Fällen für Irritationen bei potentiellen Kunden geführt, so dass wir nun einen weniger dramatischen Dialog anzeigen, der auch die Möglichkeit bietet, den Fehler an uns zu kommunizieren.



In Manual-Texten Demo_ nach Data_ umbenannt

Im Rahmen der kürzlichen Umbenennungen hatten wir auch die Tabellen mit den Testdaten umbenannt. Leider sind uns dabei deren Nennungen in den Texten des Handbuchs durchgegangen, so dass der Beispielcode nicht mehr ohne Änderungen kopiert werden konnte.
Wir haben die Handbuchtexte so angepasst, dass es wieder funktioniert.


Version vom 19.05.2017



Tastaturbelegung geändert

Mit Pfeil nach rechts bzw. links werden jetzt Knoten geöffnet bzw. geschlossen.



Name des Beispielformulars angezeigt

In der Kopfzeile des Demo-Formulars wird nun der Name des jeweils angezeigten Beispiels angezeigt. Das Formular kann außerdem per Mausklick als Popup geöffnet werden.


Version vom 04.05.2017



Neue Icongrößen: 24x24, 32x32, 48x48

Icons (resp. Bitmaps) werden nun auch in 24x24, 32x32 oder 48x48 unterstützt - auch wenn wir unseren Icon-Vorrat noch nicht entsprechend erweitert haben.



In-Place-Edit

Mit In-Place-Edit können Sie Ihre Anwender die Bezeichnungen der Einträge im TV direkt ändern lassen - und zwar selektiv in genau den Einträgen, in denen Sie in Ihrem SQL-Statement AllowEdit=1 angeben. Ändert der Anwender dann den Text, werden Sie darüber mit dem neuen Event ItemEdited informiert (s.u.).



Drag&Drop Workflow erweitert

Wenn Ihr Anwender während eines Drags die Shift/Strg/Alt-Tasten verändert, wird ein Event aufgerufen, der Sie das angezeigte Icon verändern lässt. Damit können unterschiedliche Operationen in Abhängigkeit von Status dieser Tasten ausführen (z.B. Move statt Copy).



64-Bit Integration für Drag & Drop und Rechtsklick

Die bei Drag & Drop und Rechtsklick benötigten API-Calls werden ab jetzt auch in 64-Bit unterstützt.



Auto-open-Option für die Einträge

Wir haben die Bedeutung von ItemSelectable erweitert. Sie können nun Einträge erzeugen, die zu öffnen

  • und auswählbar sind (default)
  • aber nicht auswählbar sind
  • aber nicht auswählbar sind, bei Auswahl aber statt dessen geöffnet werden
  • und auswählbar sind und bei Auswahl zusätzlich geöffnet werden
  • aber selbst nicht auswählbar sind. Beim Auswahl werden sie geöffnet und ihr erster Untereintrag wird ausgewählt
Diese Optionen sind besonders hilfreich bei der Verwendung unseres Treeviews als Menü.



Neue Events

  • Drag&Drop Icon: DragStateChanged(Context As USys_pCT_Context, ByVal RefPath As String, ByRef DragIconName As String, Shift As Integer, Cancel As Integer)
    wird aufgerufen, wenn der Anwender ein drag&drop startet oder sich der Status der Shift/Strg/Alt Tasten ändert.
    Sie können jedes Mal ein neues Icon auswählen, um dem Anwender Rückmeldung zu der zu erwartenden Operation zu geben, indem Sie einen entsprechenden angeben. Wenn Sie den Parameter Cancel setzen, wird das drag&drop abgebrochen.
  • Doppelklick: DoubleClick(Context As USys_pCT_Context, ByVal RefPath As String)
    wird aufgerufen, wenn der Anwender einen Doppelklick auf einen Knoten macht
  • FormClicked: FormClicked(Button As Integer, Shift As Integer, X As Single, Y As Single)
    wird aufgerufen, wenn der Nutzer außerhalb von Knoten auf das Formular klickt.
    Das kann dann der Fall sein, wenn keine Datensätze im TV angezeigt werden oder mit den vorhandenen nicht der gesamte Platz belegt wird.
  • ItemEdited: ItemEdited(Context As USys_pCT_Context, ByVal RefPath As String, ByRef NewCaption As String, ByRef Cancel As Integer)
    wird aufgerufen, wenn der Anwender den Text des Knotens verändert hat. Sie erhalten den neuen Text in NewCaption, können diesen in Ihrer Datenbank speichern, verändert zurückgeben oder den gesamten Vorgang stornieren.



Tolle neue Tools

  • Der Access-Explorer sieht aus wie ein Windows-Explorer, ermöglicht es aber, direkt in Ihre Datenbanken hineinzuschauen - ohne sie dabei zu öffnen. Er erschließt Ihnen die Strukturen der Tabellen (Felder, Indexe, Beziehungen) selbst in MDE/AccDEs und liefert eine Cross-Referenz über die Tabellen und Abfragen.
  • Wir haben unser Copy-Tool erweitert. Es erstellt jetzt eine Kopie und schiebt dort alle benötigten TV-Objekte hinein. Sollten dort Objekte alter Versionen vorhanden sein, werden sie gelöscht.



Diverse Umbenennungen und eine Änderungshistorie

Mit dieser Version beginnen wir die Dokumentation unserer Änderung in einer Tabelle, die Sie direkt unter dem ersten Menüpunkt der Demo abfragen können.



Behobene Fehler

  • Positionsberechnung bei Drop: Korrektur der Missweisung beim Drop in langen Formularen (Ursache Rundungsverhalten bei Umrechnung der Höhe des Detailformulars von Twpis in Pixel).
  • Falsche Einordnung im Baum: Unter bestimmten Umständen (mehr neue Einträge als im verbleibenden Intervall möglich) wurden Knoten fälschlicher Weise unter den Vaterknoten (ans Ende) eingeordnet.
    Ursache: Falscher Zeitpunkt für die Reorganisation der Sortierintervalle



...und Vieles mehr

 

Version vom 02.12.2016



Neue Rubrik mit Tools

Im Navigationsbaum haben wir es eine neue Rubrik mit Tools eingerichtet. Hier gibt es Service-Formulare zur Verwaltung von Icons, einen Design-Optimierer für die interaktive Gestaltung von Schriftarten, -größen sowie den zugehörigen Einrückungen und ein Service-Formular für das Kopieren der Treeview-Objekte in eine eigene Datenbank.



Diverse neue Design-Optionen

Die Einstellmöglichkeiten für die Textfelder und Einrückungen wurden vervollständigt und können jetzt auch für beide Felder unabhängig gesetzt werden. Für die Bestimmung des Einrückungsfaktors der Fonts gibt es unter Tools ein Service-Formular.



Mein erster Treeview

In einer weiteren neuen Rubrik finden sich umfangreiche Schnittstellenbeschreibungen und eine Schritt-für-Schritt-Anleitung zum Bau des ersten eigenen Treeviews.



Source-Code der Formulare wird angezeigt

Zu allen Beispielen gibt es jetzt den originalen Source-Code auch in de MDE. Dieser wird bei der Konfektionierung der Demo immer aktuell aus den Formularen übernommen, so dass sie genau sehen können, wie aufwändig - besser unaufwändig - die Nutzungs des Treeviews ist.
Die Quellen des Treeviews selbst sind natürlich in der MDE nicht sichtbar - dazu müssen Sie den Treeview schon lizensieren.



Neues Explorer-Beipiel mit FileSystemObject (late binding)

Das Service-Formular zum Kopieren nutzt ein neues Beispiel für einen Windows-Explorer auf Basis des FileSystemObjects, der in künftigen Versionen weiter ausgebaut wird.


Version vom 22.11.2016


Flackern behoben

Das doppelte Redraw, das beim Öffnen von Knoten immernoch durcheführt wurde, ist jetzt behoben. Beim Öffnen und Schließen von Knoten wird der TV nur noch einmalig gezeichnet (Ausnahme bei farbigem Hintergrund).

AddNode kann gepuffert werden

Von AddNode gibt es eine gepufferte Variante. Der Zeitgewinn ist beträchtlich und kann im Vergleich der Beispiele "Knoten einfügen / AddNode" und "Knoten einfügen / AddNode (gepuffert)" beobachtet werden, wenn z.B. der "Programme"-Ordner geöffnet wird.

Treeview-ComboBox

Es gibt jetzt ein Beispiel zu der Treeview-Combobox.

Dokumentation ergänzt und zum Teil übersetzt übersetzt

In der Demo ist nun eine Basis-Dokumentation aller Funktionen, Eigenschaften und Tabellenfelder enthalten. Ebenso sind Teile bereits ins Englische übersetzt.

Errorhander umbenannt

Der Errorhander wurde in "pTV_Errorhander" umbenannt, um Konflikte mit dem - ggf. ebenso benannten - eigenen Errorhander zu vermeiden. Bitte vollziehen Sie dies in Ihren Anwendungen entsprechend nach.


Version vom 27.10.2016


Reduzierung der Redraw-Anzahl

In den höheren Versionen vonn Access wurde von eingen Anwendern ein Flackern beobachtet, das sich zum Teil auf zu häufige Redraws bei mehrfacher Änderung der Datenquelle des Endlosformulars zurückführen ließ. Jetzt wird die Datenquelle sofort beim Erkennen einer Neu-Zeichnen-Situation gelöscht und erst im letzten Moment wieder eingefügt.

Vielen Dank an Klaus Oberdalhoff für die Unterstützung bei der Fehlersuche.
 

Temporäre DB über DAO erzeugen

Bisher wurde die temporäre Datenbank für den Treeview mit Transferdatabase erzeugt, was unter Access 2010 ff. zu der Sicherheitsabfrage geführt hat. Mit der Umstellung auf DAO und die Erzeugung der Datenbank mittels 'CREATE TABLE...' fällt diese nun weg, ohne dass das hierzu ein Nutzereingriff notwendig ist.

Danke für den hilfreichen Verweis auf die Access Code Library an Josef Pötzl.
 


Version vom 04.10.2016


Vortragsdemo wird Produkt

Die Idee, die Präsentation im Vortrag direkt mit dem Produkt zu machen, ist gut angekommen und bietet einen schnellen Einstieg in die Konzepte. Aufgrund des inzwischen siebenjährigen Einsatz des Treeviews in eigenen Projekten, sollte der TV gut genug getestet, um in fremdem Umfeld eingesetzt zu werden.

  • Die Beispielformulare wurden um ein Error-Handling erweitert.
  • Treeview als Navigation in den Beispielen eingebaut.
  • Automatischen Produktionsprozess für MDB --> Demo-MDE implementiert.

eMail
Kennwort

Registrieren Kennwort verloren
Access-Treeview


Zum Download der Demo

Jetzt kaufen / buy now
Landkarten in Access


Zum Download der Demo

Jetzt Lizenz kaufen
   Druckversion
 
Laufzeit: 0.00640 sec