PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Warum wird Methode geladen *G* ?


Unregistered
2003-05-21, 16:27:40
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <fstream.h>
#include "NotepadU.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
//AN DIESER STELLE ÖFFNET SICH EINE METHODE
}
//---------------------------------------------------------------------------

void __fastcall TForm1:penClick(TObject *Sender)
{
memaus->Clear();
Dateien datei;
int i=0;
dlgopn->Filter="*.*";
if (dlgopn->Execute())
{
i=1;
if (FileExists(dlgopn->FileName))
{
datei.dateiname=dlgopn->FileName;
datei.ea.open(datei.dateiname.c_str(),ios::in);
while (datei.ea.good())
{
datei.ea.getline(datei.puffer,249);
datei.ausgabe=datei.ausgabe+datei.puffer+"\n";
}
memaus->Lines->Add(datei.ausgabe);
}
}
else
{
MessageBox(NULL,"Datei existiert nicht","Fehlermeldung",MB_ICONWARNING);
}
if (i==0)
{
MessageBox(NULL,"Keine Datei ausgewählt","FEHLEMELDUN",MB_ICONWARNING);
}


}
Dateien:ateien()
{

puffer=new char[250];
}
//---------------------------------------------------------------------------

void __fastcall TForm1::SpeichernClick(TObject *Sender)
{
dlgsave->Filter=".txt";
Dateien datei;
int i=0;
if (dlgsave->Execute())
{
datei.dateiname=dlgsave->FileName;
i=1;
}

if (i==1)
{
datei.ea.open(datei.dateiname.c_str(),ios:ut);
datei.inhalt=memaus->Text;
datei.ea<<datei.inhalt.c_str();
}
if (datei.ea.good())
{
MessageBox(NULL,"Dateien wurde fehlerfrei erstellt","Nachricht",MB_OK);
}
if (i==0)
{
MessageBox(NULL,"Bitte geben Sie einen Dateinamen an","Fehlermeldung",MB_ICONWARNING);
}


}
//---------------------------------------------------------------------------


void __fastcall TForm1::SUCHEClick(TObject *Sender)
{
int i=0;
int nr;

AnsiString test;


if (dlgfind->Execute())
{

Sleep(3000);
test=dlgfind->FindTextA;
dlgfind->FindTextA=test;
ShowMessage(test);

}

}
//---------------------------------------------------------------------------

void __fastcall TForm1::SchriftartClick(TObject *Sender)
{
Schrift schrift;
if (dlgfont->Execute())
{
dlgfont->MaxFontSize=50;
dlgfont->MaxFontSize=10;
schrift.Schriftname=dlgfont->Font->Name;

if (AnsiString(dlgfont->Font->Color)!="")
{
dlgfont->Font->Color=memaus->Font->Color;
schrift.farbe=memaus->Font->Color;
}
schrift.schrifgro=dlgfont->Font->Size;
ShowMessage(schrift.schrifgro);

memaus->Font->Size=schrift.schrifgro;
memaus->Font->Name=schrift.Schriftname;

}

bool test;
fstream schreib;
AnsiString schriftart;
int gr;
if(dlgsave->Execute())
{
AnsiString name=dlgsave->FileName;
ShowMessage(name);

schreib.open(name.c_str(),ios:ut);

schreib<<schrift.Schriftname.c_str()<<endl;
schreib<<AnsiString(schrift.schrifgro).c_str()<<endl;
schreib<<schrift.farbe.c_str()<<endl;

schreib.close();
}


}

void TForm1::laden()
{
fstream ein;

dlgopn->Execute();
AnsiString name;
name=dlgopn->FileName;
ein.open(name.c_str(),ios::in);

AnsiString alles[3];
char *puffer;
puffer=new char[250];

ein.getline(puffer,249);
alles[0]=puffer;
MessageBox(NULL,alles[0].c_str(),"test",MB_OK);
ein.getline(puffer,249);
alles[1]=puffer;
MessageBox(NULL,alles[1].c_str(),"test",MB_OK);
// ein.getline(puffer,249);
//alles[2]=puffer;

ein.close();

delete puffer;
memaus->Font->Name=alles[0];
memaus->Font->Size=StrToInt(alles[1]);


}

//---------------------------------------------------------------------------



void __fastcall TForm1::Wrterzhlen1Click(TObject *Sender)
{
int wortzahler;
AnsiString alles=memaus->Lines->GetText();
int lange=alles.Length();
for (int i=0;i<alles;i++)
{
if (alles.SubString(i,1)==" ")
{
ShowMessage("TEST");
wortzahler++;
}
}
}
//

Nach ich eine Methode zum Wörtzählen intigriert habe ich eine Methode , die vorher zu Test zwecken direkt beim starten des programms augerufen habe entfernt. Jetzt wird diese Methode trotzdem noch sofort ausgeführt , obwohl ich den Methodenaufruf entfernt habe. Selbst nach dem ich aus der Header Datei die Methode Deklaration und aus der Cpp die Methodedefinition auskommentiert habe , konnte diese Methode noch ausgeführt werden. Woran kann das liegen ?

ethrandil
2003-05-21, 22:28:45
ehrm, zB daran, dass die objektdateien schreibgeschützt sind *gg*

Unregistered
2003-05-22, 15:44:44
IMO werden die obj Dateien beim kompilieren doch neu erstellt.Also kann eigentlich nicht daran liegen.
Nachdem ich den kompleten Quelltext in ein neues Projekt eingefügt habe , geht das Programm.Trotzdem hätte ich gern noch andere Vermutungen warum es nicht vorher geklappt hat.