AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Textdatei in Stringgrid

Ein Thema von onkelmehli · begonnen am 26. Jul 2007 · letzter Beitrag vom 31. Jul 2007
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#11

Re: Textdatei in Stringgrid

  Alt 28. Jul 2007, 22:43
Hallo,

im DF gab es vor kurzen auch eine Nachfrage nach so einer Komponente:
[VCL Win32] Textdarstellungskompo. mit verschiebbaren, vertikalen Linien
Miniaturansicht angehängter Grafiken
textintabelle_149.jpg  
Angehängte Dateien
Dateityp: zip stringgridtextintabelle_456.zip (2,0 KB, 10x aufgerufen)
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
onkelmehli

Registriert seit: 8. Mär 2006
119 Beiträge
 
Delphi 2007 Professional
 
#12

Re: Textdatei in Stringgrid

  Alt 30. Jul 2007, 12:01
Hallo Lannes,

danke, das ist schon fast genau das was ich suche.

Du schreibst dort:
Zitat:
Der Democode ist aber nur geignet wenn die komplette Textbreite sichtbar ist. Um das ganze Scrollfähig zu gestalten ist noch so einiges daran zu ändern.
was ist denn daran genau zu ändern ?

Gruß

Matthias
  Mit Zitat antworten Zitat
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#13

Re: Textdatei in Stringgrid

  Alt 31. Jul 2007, 00:16
Hallo,

was da genau zu ändern ist kann ich nicht hier auflisten, denn das Demo wurde nicht aus einem fertigen Projekt extrahiert. Es war dazu gedacht einen Ansatz aufzuzeigen.

Aber mal so im Groben:
Ich habe das StringGrid gewählt damit es direkt zur Vorschau, der durch den Anwender gewählten Trennung, dienen kann.
Das DemoGrid besteht nur aus einer Spalte.

Hat man nun Text der breiter als diese eine Spalte ist, muß man ihn über mehrere Spalten ausgeben, um scrollen zu können. Das StringGrid kann leider nur spaltenweise scrollen. --> Änderung 1, und nicht so einfach wie man zuerst denkt, den die Textausgabe beginnt im negativen Bereich und muss für jede Zelle in der Zeile ausgeführt werden, sobald eine Zelle neu gezeichnet werden muss/wird.

Bei Mausklick wird der Abstand zum linken Rand gespeichert und ein Trennpfeil an der Stelle gezeichnet. Scrollt man nun, muss der nach links verschobene Bereich in den zu speichernden Abstand mit eingerechnenet werden, aber nicht bei der grafischen Ausgabe des Trennpfeils, denn die bezieht sich auf den Rand des StringGrids.
--> Änderung 2

Bei Mausklick auf einen vorhandenen Trennpfeil, der Mauscklick löst ein Neuzeichen der Zelle aus, wird dieser Pfeil entfernt(besser gesagt, nicht neu gezeichnet) und an der Stelle das 1-pixelbreite Panel eingeblendet, damit man die Trennung per Maus optisch verschieben oder entfernen kann(aus dem Grid rausziehen). --> Änderung 3, denn auch hierbei Berücksichtigung der aus dem Blickfeld gescrollten Spalte(n) bei der Berechnung der Abstände/Koordinaten.

Dann fehlt noch die eigentliche Trennung des Textes und die Übergabe an das Zielgrid.

Das sind so die wesentlichen Änderungen die mir einfallen, aber wie das immer so ist,
so manche Änderung erzeugt neuen Änderungsbedarf.

Eventuell lohnt es sich auch mal über eine Realisierung mittels PaintBox und Scrollbox nachzudenken.

Ich hoffe den Aufwand annähernd richtig beschreiben zu haben und es einigermaßen verständlich ist.
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 17:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz