Arbeiten mit dem TMemo - C++ Builder Snippets
Arbeiten mit dem TMemo.
Ich zeige hier einige Grundlagen was das Arbeiten mit dem Memo Feld anbelangt.
z.B.
Laden und speichern des Inhaltes in eine Textdatei, hinzufügen von neuen Zeilen an einer bestimmten Position, verändern von vorhandenen Zeilen, löschen von Zeilen, das Memo Feld zeilenweise auslesen oder die Cursor Position im Memo ermitteln. Beispiel:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
//--------------------------------------------------------------------------- //******** ******** //******** Dieses Beispiel stammt von www.ecodes.de ******** //******** ******** #include <vcl.h> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { //Memo Zeilenweise auslesen for(int t=0; t < Memo1->Lines->Count; t++){ ShowMessage (Memo1->Lines->Strings[t] ); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { //Eine weitere Zeile am Ende einfügen Memo1->Lines->Add("Neue Zeile"); //Eine weitere Zeile am Anfang einfügen Memo1->Lines->Insert(0,"Neue Zeile"); } //--------------------------------------------------------------------------- void __fastcall TForm1::Memo1MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { //Cursorposition bei Mausklick in Memo Label2->Caption = "Zeile: " + AnsiString(Memo1->CaretPos.y) ; Label1->Caption = "Spalte: " + AnsiString(Memo1->CaretPos.x); } //--------------------------------------------------------------------------- void __fastcall TForm1::FormKeyUp(TObject *Sender, WORD &Key, TShiftState Shift) { //Cursorposition bei KeyUp in Memo Label2->Caption = "Zeile: " + AnsiString(Memo1->CaretPos.y) ; Label1->Caption = "Spalte: " + AnsiString(Memo1->CaretPos.x); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { //Text einer Zeile ändern Memo1->Lines->Strings[1]="geändert"; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button4Click(TObject *Sender) { //Zeile 1 löschen Memo1->Lines->Delete(1); } //--------------------------------------------------------------------------- void __fastcall TForm1::Button5Click(TObject *Sender) { //Memo in Textdatei speichern AnsiString SaveP = ExtractFilePath(Application->ExeName) + "Memo.txt"; Memo1->Lines->SaveToFile(SaveP) ; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button6Click(TObject *Sender) { //Memo aus Textdatei laden AnsiString SaveP = ExtractFilePath(Application->ExeName) + "Memo.txt"; if(FileExists(SaveP)) Memo1->Lines->LoadFromFile(SaveP) ; } //--------------------------------------------------------------------------- |