Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите с ошибкой разобраться [D7, XP]


Страницы:   1 2

petr ©   (2010-01-14 10:56:00) 

Здравствуйте!!! Подскажите почему возникает ошибка "Aceess Violation at adress" и т.д.
Код вот такой:
procedure TForm3.FormCreate(Sender: TObject);
begin
form4.StringGrid1.Cells[0,0]:='Тип двигателя'
end;

Форма 4 создана со ТStringGrid.


brother   (2010-01-14 11:38:00) [1]

> это что-то должно быть создано.

не факт... он в дизайнере видит - значит создано
а
про [20] также визуально видно различие ;)


Ega23   (2010-01-14 11:36:00) [2]


> интуитивно догадается...)


Ну тогда он также должен интуитивно догадаться, что когда он обращается к чему-то, это что-то должно быть создано.


brother   (2010-01-14 11:33:00) [3]

> где вообще создается экземпляр и инициализируется переменная

ага, он так тебя и понял, о чем ты... если пишет [3]

> будет заменено на
> var
> ChetvertayaForma : TForm4;

интуитивно догадается...)


Медвежонок Пятачок   (2010-01-14 11:30:00) [4]

назови мне случай, когда в [7] будет AV, и учитывай, что эта ветка для начинающих...

его уже озвучили. экземпляра нет.
а ты с учетом того, что ветка для начинающих, учишь убирать ав путем шаманских переносов кода по обработчикам.
вместо того, что бы заострить внимание на том, что где вообще создается экземпляр и инициализируется переменная


Anatoly Podgoretsky   (2010-01-14 11:30:00) [5]

> petr  (14.01.2010 11:14:05)  [5]

Удивляешь, естественно Create, что и переводится как создать


Ega23   (2010-01-14 11:29:00) [6]


> назови мне случай, когда в [7] будет AV, и учитывай, что
> эта ветка для начинающих...


Когда

var
 form4 : TForm4;

будет заменено на
var
 ChetvertayaForma : TForm4;


Anatoly Podgoretsky   (2010-01-14 11:29:00) [7]

> petr  (14.01.2010 11:09:03)  [3]

Так и говорит, я мол ругаюсь на тебя


Anatoly Podgoretsky   (2010-01-14 11:28:00) [8]

> petr  (14.01.2010 10:56:00)  [0]

Перенеси этот код в OnShow


brother   (2010-01-14 11:24:00) [9]

назови мне случай, когда в [7] будет AV, и учитывай, что эта ветка для начинающих...


Медвежонок Пятачок   (2010-01-14 11:23:00) [10]

сегодня не будет, а завтра будет.


brother   (2010-01-14 11:22:00) [11]

> в чем разница где получать av. в онкриэйт или в онактвэйт?

ты сам проэксперементируй... для начала ...
да хоть бы этим кодом...
в [7] AV не будет!


Медвежонок Пятачок   (2010-01-14 11:20:00) [12]

о тебе конечно.
в чем разница где получать av. в онкриэйт или в онактвэйт?


petr   (2010-01-14 11:20:00) [13]

Спасибо


brother   (2010-01-14 11:19:00) [14]

> но и ты тоже

и о чем ты сейчас?


Медвежонок Пятачок   (2010-01-14 11:18:00) [15]

ты должен понимать каждый символ, что ты вводишь...

не только он должен понимать но и ты тоже


brother   (2010-01-14 11:16:00) [16]

> но ругается на строку form4.OnShow;

ну, еще бы не ругался...
ты должен понимать каждый символ, что ты вводишь...
ээх:
procedure TForm3. OnActivate(Sender: TObject);
begin
 form4.StringGrid1.Cells[0,0]:='Тип двигателя'
end;


Медвежонок Пятачок   (2010-01-14 11:15:00) [17]

вызовом конструктора создать


petr   (2010-01-14 11:14:00) [18]

Подскажите как создать!!!


Ega23   (2010-01-14 11:11:00) [19]


> т.е. код будет такой:


Нет, он такой не будет.
Повторяю: объект form4 ещёне создан.


petr   (2010-01-14 11:09:00) [20]

т.е. код будет такой:
procedure TForm3.FormCreate(Sender: TObject);
begin
form4.OnShow;
form4.StringGrid1.Cells[0,0]:='Тип двигателя'
end;

но ругается на строку form4.OnShow;


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо