Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Rizvan
Зарегистрирован: 04.07.2003 Сообщения: 28
|
Добавлено: Ср Фев 12 2003 10:12 Заголовок сообщения: CBiulder |
|
|
Привет int i=0;
void __fastcall TForm1::Button1Click(TObject *Sender) { TStringList *List = new TStringList; AnsiString S1=Edit1->Text; AnsiString S11=Edit2->Text; AnsiString S2="d:\\doc\\txt\\1"; List->Add(S11); List->Insert(i, S1); i=i+1; List->SaveToFile(S2); RenameFile(S2, Edit2->Text); }
Уменя при 3-м клике выдает ошибку "List index out of bounds(2)". И удоляет предыдущую строку. Как избежать этого? |
|
Вернуться к началу |
|
|
Adil Гость
|
Добавлено: Ср Фев 12 2003 11:32 Заголовок сообщения: Re: CBiulder |
|
|
Дело в том что твой List создается заново при каждом вхождении функции. Объяви TStringList *List; глобальным или (лучше) как член-данное TForm1, в конструкторе TForm1 или ее OnCreate сделай List = new TStringList;
и незабудь delete List; где-нибудь при закрытии формы, OnDestroy, например
Удачи. |
|
Вернуться к началу |
|
|
|