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 30. Jul 2007
Antwort Antwort
Seite 1 von 2  1 2      
onkelmehli

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

Textdatei in Stringgrid

  Alt 26. Jul 2007, 12:47
Hallo !

Ich möchte eine Textdatei in ein Stringgrid einlesen, soweit kein Problem. Aber wie kann ich nach eigenem Ermessen festlegen, welcher Textbaustein in welche Zelle gehören soll ?
Es gibt in Excel die Möglichkeit, Daten zu Importieren, nun kann man im Assistenten die Spalten(-breite) selbst festlegen (siehe Bild im Anhang).

Wenn ich die Länge der Zeichen habe, ist dies ja kein Problem, nur wie lege ich die Spaltenbreite fest ? Gibt es eine Komponente (Listbox o. ä.) wie im Bild, in der man die Anzahl der Zeichen anzeigen und dann per Klick festlegt, bis hierhin ist Spalte1, bis hierhin ist Spalte2 usw. ?

Es gibt diese TxtDatasetDemo die genau so einen Assistenten darstellt, nur leider fehlt hierzu die nötige Komponente.

Kann mir jemand weiter helfen ?


Gruß

Matthias
Miniaturansicht angehängter Grafiken
exelkonvert_170.gif  
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Textdatei in Stringgrid

  Alt 26. Jul 2007, 13:00
Hi,

Canvas.TextWidth() gibt dir die Länge des Textes in Pixeln zurück. Wenn du nun eine Festbreitenschrift verwendest(solltest du ), kannst du damit die einzelnen Breiten herausfiltern und passend setzen.

Gruß
Ansgar
  Mit Zitat antworten Zitat
onkelmehli

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

Re: Textdatei in Stringgrid

  Alt 26. Jul 2007, 13:58
Hallo,

danke für die Antwort !

Aber wenn ich das richtig sehe, gibt mir Canvas.TextWidth() die gesamte Länge des Strings in Pixeln zurück, ich möchte aber die Länge bis zu dem Punkt, den ich anklicke ?

Gruß

Matthias
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Textdatei in Stringgrid

  Alt 27. Jul 2007, 06:38
ja, das stimmt. Aber wenn du eine Festbrewtien.-Schrift verwendest (zB Courier New) , dann sind ja alle Buchstaben gleichbreit und du kannst dir somit die anzahl der Buchstaben errechnen.


Gruß
Ansgar
  Mit Zitat antworten Zitat
onkelmehli

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

Re: Textdatei in Stringgrid

  Alt 27. Jul 2007, 11:32
Ok, ich hab mich gerade ein wenig mit CaretPos beschäftigt und festgestellt, das dies wahrscheinlich eine sinnvolle Lösung ist, um die Spaltenlänge auszulesen.

Nun würde ich aber gern, genauso wie im angehängten Screen, das über dem Richedit eine Leiste vorhanden ist, die mir die Anzahl der Zeichen anzeigt, gibt es hierfür eine Komponente ?
  Mit Zitat antworten Zitat
Benutzerbild von f.siebler
f.siebler

Registriert seit: 15. Jan 2007
Ort: Hamburg
170 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Textdatei in Stringgrid

  Alt 27. Jul 2007, 11:44
Moin,

das hilft dir zwar nicht wirklich weiter, aber ich würde es gut finden, wenn du die Bilder etc, als .jpg oder so anhängt, nen halbes MB BMP als Anhang macht leider wenig spass wenn man nicht die mega Leitung hat

Eine Komponente die ein Lineal oder ähnlich anzeigt fällt mir gerade net, ein schau sonst mal bei Torry...
Viele Grüße aus Hamburg
Fabian
sql-praxis.net: sql von der Theorie in die Praxis...
  Mit Zitat antworten Zitat
onkelmehli

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

Re: Textdatei in Stringgrid

  Alt 27. Jul 2007, 12:03
Moin f.siebler,

sorry, war mir gar nicht aufgefallen, das das Bild so groß ist, hab es nun als .gif angehangen

danke für den Tipp, werd gleich mal nachschauen....
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#8

Re: Textdatei in Stringgrid

  Alt 27. Jul 2007, 20:44
Zitat von angos:
..Wenn du nun eine Festbreitenschrift verwendest(solltest du ..
Warum sollte er das ? Das macht vielleicht Sinn bei zeilenorientierten Steuerelementen (Memo, Listbox etc.), aber nicht bei einem Stringgrid.
Gruß
Hansa
  Mit Zitat antworten Zitat
onkelmehli

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

Re: Textdatei in Stringgrid

  Alt 28. Jul 2007, 11:25
Hallo Hansa,

Zitat:
Das macht vielleicht Sinn bei zeilenorientierten Steuerelementen (Memo, Listbox etc.), aber nicht bei einem Stringgrid.
im Stringgrid ist die Schriftart auch egal, denn dort sind die Daten ja schon importiert, ich möchte bevor ich eine Textdatei importiere festlegen, wie breit die Spalten beim Import sein sollen, sieh dir am besten das Bild oder den Import Wizard in Excel an, dann ist es glaub ich einfacher zu verstehen was mein eigentliches Ziel ist, genau so ein Wizard zu erstellen.

Gruß

Matthias
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#10

Re: Textdatei in Stringgrid

  Alt 28. Jul 2007, 13:46
Dieses Lineal ist ja zumindest schon halbwegs im Stringgrid eingebaut. Verändern der Spaltenbreiten durch ziehen in der Überschriftszeile. Oder geht das nur zur Designzeit ? K.A., brauche das sowieso nicht. Solange nicht geklärt ist, was eine Textdatei in einem Stringgrid zu suchen hat, kommt wohl sowieso keine brauchbare Antwort.

Will ich in der 2. Spalte Strings unterbringen mit max. 25 Zeichen, dann geht das so :

sg.ColWidths [2] := 25 * (Font.Size + 1); Wie gesagt : die Schriftart interessiert nicht ! Egal welche, 25 Zeichen werden immer da rein passen, ohne was abzuschneiden.
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 13:14 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