AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

Ein Thema von delphitrixer · begonnen am 3. Nov 2011 · letzter Beitrag vom 10. Nov 2011
Antwort Antwort
Seite 1 von 2  1 2   
delphitrixer

Registriert seit: 12. Aug 2004
51 Beiträge
 
Delphi 2010 Professional
 
#1

VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 3. Nov 2011, 17:39
Hallo

Ich habe in meinem Projekt eine VST mit ca. 50 Spalten. Mit der Maus kann man per Drag&Drop die Spaltenreihenfolge verändern was soweit super klappt. Da es aber so viele Spalten sind und nicht alle auf dem Screen sichtbar sind, möchte ich, dass wenn ich eine Spalte verschiebe, automatisch nach rechts oder links gescrollt wird, bis ich die Spalte platziere.

Ich habe schon mit den Properties AutoScroll, TreeOptions-toAutoScroll etc. probiert. Ich bringe die VST aber irgendwie nicht dazu zu scrollen, wenn ich über den Borderrand schiebe. AutoScrollDelay etc. habe ich auch geprüft.

Hat schon jemand Erfahrungen diesbezüglich gemacht?

Danke
Bruno
  Mit Zitat antworten Zitat
delphitrixer

Registriert seit: 12. Aug 2004
51 Beiträge
 
Delphi 2010 Professional
 
#2

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 4. Nov 2011, 08:16
Guten Morgen Zusammen

Ich habe mir nochmals die diversen Demos der VST angeschaut. Auch dort bin ich leider auf keinen Hinweis gestossen, wie ich die VST zum horizontal scrollen bringe, wenn ich Spalten verschiebe.

Hat das noch niemand gebraucht?
  Mit Zitat antworten Zitat
Sailor

Registriert seit: 20. Jul 2008
Ort: Balaton
96 Beiträge
 
Delphi 2005 Professional
 
#3

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 4. Nov 2011, 09:10
Du mußt in OnMouseMove die Cursorposition überprüfen. Wenn sich die einem Rand nähert, dann das Scrollen um eine bestimmten Betrag in die entsprechende Richtung manuell durchführen
  Mit Zitat antworten Zitat
delphitrixer

Registriert seit: 12. Aug 2004
51 Beiträge
 
Delphi 2010 Professional
 
#4

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 4. Nov 2011, 09:17
Hallo Sailor

Ich dachte, die VST macht das mit Ihren Optionen hoAutoScroll etc. von selbst. Wozu sind dann diese Properties und Methoden?
  Mit Zitat antworten Zitat
delphitrixer

Registriert seit: 12. Aug 2004
51 Beiträge
 
Delphi 2010 Professional
 
#5

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 8. Nov 2011, 18:07
Sorry, aber irgendwie hat mich der Tip von Sailor nicht weitergebracht.

Auf OnMouseMove zu scrollen wenn ich an den Rand kommt bringt mir nicht viel. Die VST soll nur dann scrollen, wenn ich eine Spalte verschiebe und diese z.B. an das Ende verschieben will. So wie das halt in jeder vernüftigen Software mit einer Spaltenansicht der Fall ist.

Hat das denn noch niemand gebraucht? Keiner einen Lösungsansatz?
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
435 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 9. Nov 2011, 07:14
Passen AutoScrollDelay und AutoScrollInterval?
Vllt hilft:
function ScrollIntoView(Column: TColumnIndex; Center: Boolean): Boolean; overload;
Nr.1 Delphi-Tool: [F7]

Geändert von ConnorMcLeod ( 9. Nov 2011 um 07:34 Uhr)
  Mit Zitat antworten Zitat
delphitrixer

Registriert seit: 12. Aug 2004
51 Beiträge
 
Delphi 2010 Professional
 
#7

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 9. Nov 2011, 08:34
AutoScrollDealy etc. ist alles gesetzt. Das Problem ist eigentlich, dass ich kein Event finde, dass während des Draggen des Spaltenheaders feuert.

Ich hab mal einen Screenshot angehängt, damit man sich ein Bild machen kann, wie ich die Spalte verschiebe. Vielleicht hilft das für einen Lösungsvorschlag weiter. Es ist ja eingentlich kein richtiges Drag&Drop sondern eine "interen" Funktion von VST, um Spalten umzusortieren.

Ich glaube die ganzen AutoScroll-Funktionen sind nur für Drag&Drop von Nodes zu gebrauchen.
Miniaturansicht angehängter Grafiken
vst_scroll_column-move.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
435 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 9. Nov 2011, 08:48
Wie sieht's damit aus; ich meine nur von der Idee her, der macht egtl was anderes, aber ...
Nr.1 Delphi-Tool: [F7]
  Mit Zitat antworten Zitat
delphitrixer

Registriert seit: 12. Aug 2004
51 Beiträge
 
Delphi 2010 Professional
 
#9

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 9. Nov 2011, 08:58
Danke für den Link. Ich habe den Code kurz in einem Demo-Projekt angeschaut. Hilft leider nicht sonderlich weiter.
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
435 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: VirtualTreeView (VST) AutoScroll beim verschieben von Spalten klappt nicht

  Alt 9. Nov 2011, 09:04
Kannst Du ein rudimentäres Demoprojekt online stellen, damit ich mir nicht alles selbst zusammenbasteln muss?
Nr.1 Delphi-Tool: [F7]
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf