Велес |
Отправлено: 01.08.2003, 18:27 |
|
Не зарегистрирован
|
Здравствуйте!
помогите пожалуйста разобраться с проблемой, которая возникает при попытке добавить текст из Edit в RichEdit путем нажатия кнопки.
Вот код:
void __fastcall Tmain::Button1Click(TObject *Sender)
{
if(!(Frame2->Edit1->Text == ""))
{
MDIChild->RichEdit1->Lines->Delete(0);
MDIChild->RichEdit1->Lines->Insert(0, "Значение переменной = " + Frame2->Edit1->Text);
Frame2->Edit1->Text = "";
}
}
//---------------------------------------------------------------------------
А вот, что валится в ответ при нажатии кнопки:
Access violation at address 00401D76 in module "*.exe". Read of address 00000210.
Сначала начинает указывать на строку if ну а дальше по всему телу цикла.
Самое главное, что задача при запуске в пустой новой форме работает. А в моей программе отказывается.
Заранее благодарен. |
|
Admin |
Отправлено: 01.08.2003, 22:28 |
|
Владимир
Группа: Администратор
Сообщений: 1190
|
Возможно какие-то проблемы с MDIChild
В приведенном коде ошибок нет.
Такое впечатление, что вторая форма у вас в проекте
Available Forms, и вы ее не создаете,
так что или создавайте ее, или перенесите ее
в список Auto-create forms
(на вкладке Project -> Options-> Forms)
|
|
Велес |
Отправлено: 04.08.2003, 12:17 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 18
|
2 Admin:
Спасибо за совет. MDIChild действительно находилась в Available Forms, но я её сам туда поместил, чтобы она не создавалась сразу при запуске приложения. К тому же объект Frame не был прописан...но... Только вот проблему это не решило:) Да, сообщение об ошибке перестало появляться, но сам код не работает:)
Может я ещё что-то мог упустить?
Заранее благодарен. |
|
Admin |
Отправлено: 04.08.2003, 12:48 |
|
Владимир
Группа: Администратор
Сообщений: 1190
|
А попробуйте обойтись без объекта Frame
(вообще убрать Frame из проекта)
и потом, как вы определяете, в какой из
MDIChild это будет выводиться (и почему именно MDIChild)?
|
|