Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Text Datei in einem Memo Feld anzeigen lassen ?
Daniel07A - Sa 15.01.05 13:39
Titel: Text Datei in einem Memo Feld anzeigen lassen ?
Hi,
Ich hab das Problem, dass ich es nicht schaffe eine Text Datei, die ich selber geschrieben habe in einem Memofeld anzeigen zu lassen, wenn ich auf einen Button klicke.
Ihr habt zwar schon ein par threads zu diesem Thema, aber ich verstehe das mit dem 'opendialog.filename:=...' nicht wirklich. Wie bekomme ich die .txt Datei in Delphi rein und welchen Pfad muss ich angeben um darauf zugreifen zu können ?
Gruß daniel
Moderiert von
Tino: Topic aus Sonstiges verschoben am Mo 17.01.2005 um 09:02
Keldorn - Sa 15.01.05 13:46
eine zuweisung von opendialog1.filename wird dir nichts bringen, du willst den ausgewählten dateinamen auslesen.
Delphi-Quelltext
1:
| if opendialog1.execute then memo1.lines.loadfromfile(opendialog1.filneme) |
Mfg Frank
Daniel07A - Sa 15.01.05 13:52
ok aber,
Delphi-Quelltext
1:
| if opendialog1.execute then memo1.lines.loadfromfile(opendialog1.filneme) |
Was soll 'opendialog1' heißen (bzw. die '1') ? und
was soll ich bei dem 'filename' eingeben (den ganzen pfad mit C:\... wo ich die text datei gespeichert habe?)?
Keldorn - Sa 15.01.05 14:00
den opendialog hast du doch selber ins spiel gebracht :gruebel:.
Der opendialog ist eine zur laufzeit nicht sichtbare Komponente, die du auf die form ziehen kannst (Registerkarte dialogs). die 1 dahinter ist Standard, du kannst das ding doch nennen wie du willst. mit execute wird der Dateiauswahldialog geöffnet und du kannst eine/mehrere dateien, je nach option, auswählen. mit opendialog.filename erhälst du die ausgewählte Datei, mit opendialog.files die ausgewählte
n Datei
en.
du kannst natürlich auch die Datei ohne dialog selbst angegeben
Delphi-Quelltext
1:
| memo1.lins.loadfromfile(Dateiname) |
Was du als Dateinamen angibst, bleibt dir überlassen. Letzendlich sollte er so gewählt sein, das dort auch die Datei liegt :mrgreen:. Du solltest immmer den kompletten Pfad mitangeben.
mfg Frank
Coder - Sa 15.01.05 14:02
Ich glaube er will nur eine vorbestimmte Datei laden, ohne einen OpenDialog.
Delphi-Quelltext
1: 2: 3: 4:
| procedure TForm1.Button1Click(Sender: TObject); begin Memo1.lines.loadfromfile('C:\textdatei.txt'); end; |
(Mist, wieder zu langsam)
Daniel07A - Sa 15.01.05 14:20
ok habs hinbekommen.
wenn der text jetzt länger ist als das Memo Feld, wie muss ich dann eine Scrollbar einfügen ?
Danke aber schonmal an alle für die gute Hilfe.
Delete - Sa 15.01.05 14:22
Stell mal die Eigenschaft Scrollbars deines Memos auf ssBoth !
Daniel07A - Sa 15.01.05 14:33
ok auch hinbekommen.
ich würd aber gerne noch eine andere Freage stellen.
Kann ich irgendwie die Schrift im text dokument fett machen oder färben, so das ich es auch im memo feld dann fett sehe. da gibt es doch bestimmt eine tabelle für mit allen befehlen.
Keldorn - Sa 15.01.05 14:36
nein, das geht mit einem memo für einzelne Textteile nicht, nur in einem richedit. Gugg dir beim richedit die sel-*eigenschaften an und such im forum danach.
Coder - Sa 15.01.05 14:38
Du kannst nur die Schriftart vom Kompletten Text ändern, ansonsten musst du ein RichEdit nehmen.
Daniel07A - Sa 15.01.05 15:05
ja ne dann lass ich es erstmal so wie es jetzt ist.
wenn ich das programm jetzt nur mit der exe datei abspielen will , auf einem anderen pc, findet er die .txt dokumente nicht. muss ich dann immer den ganzen ordner mit allen units und txt dokumenten mit kopieren, oder geht das auch anders ?
Delete - Sa 15.01.05 16:32
Die .txts ja, die Units nein. Du könntest allerdings auch alle Textfiles mit in die exe kompilieren, wodurch du nur noch die exe ansich wietergeben musst. Stichwort
RESSOURCE
Daniel07A - Sa 15.01.05 18:23
ok hab mal im forum geschaut aber nicht wirklich alles verstanden.
Zitat: |
Man kann eine beliebige Datei als TXT Ressource in eine
Exe-Datei einbinden.
Das folgende Beispiel zeigt, wie man eine Text-Datei aus
einer Ressource lädt und in einem TMemo anzeigt.
Erstelle zuerst mit einem TextEditor eine Datei "textres.rc" mit folgendem Inhalt:
File1 TXT file1.txt
File2 TXT file2.txt
Kompiliere diese mit brcc32.exe: in deinen Delphi Ordner unter Delphi\bin
brcc32.exe textres.rc
Es wurde nun eine textres.res Datei erzeugt.
Kopiere nun die textres.res Datei in deinen Projekt Ordner
*)
|
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| implementation
{$R *.dfm} {$R textres.res} procedure TForm1.Button1Click(Sender: TObject); var ResStream: TResourceStream; begin ResStream := TResourceStream.Create(HInstance, 'File2', 'TXT'); Memo1.Lines.LoadFromStream(ResStream); ResStream.Free; end; |
so, jetzt weiß ich aber nicht wie ich diese textres datei kompilieren soll. ich habe bis dahin alles so gemacht wie es da steht. aber ich kann diese brcc32 datei nicht öffnen bzw. weiß ich nicht wie man was kompiliert ?
Tino - Mo 17.01.05 10:02
Hallo Danil und :welcome: im Delphi-Forum.de!
Bitte stelle in einem Topic immer nur eine Frage. Für jede weitere Frage erstelle ein neues Topic in der richtigen Sparte. Ansonsten blickt nacher keiner mehr durch. Da die erste Frage bereits beantwortet ist schließe ich das Topic mal.
Gruß
Tino
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!