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

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

TChildForm - изменение размеров [D6, Win2k, WinXP]


Fostr ©   (2005-02-01 10:42:00) 

Доброе время суток. уважаемые знатоки Delphi!
Прошу помощи! Есть fsMDIForm и есть fsMDIChild . В ChildForm есть Memo1 на опред. расстоянии от левого края ChildForm. Хочу, что бы  при изменеии размеров ChildForm Memo1 так же меняло свое положение. Для этого делаю следующее:

procedureTChildForm.FormResize(Sender: TObject);
var
w:integer;
begin
w:=(ActiveMDIChild as TChildForm).Width;
Memo1.Left:=Memo1.Left+Round(W/10);
end;

При изменении размеров выпадает сообщение:Access Violation at address 0046DAD0 ...

Как с этим бороться? Может я что то не так делаю? Заранее спасибо!


Fostr   (2005-02-01 10:53:00) [1]

А выяснить чему равно ActiveMDIChild  не пробовал ?
Да и вообще дебагером походить ?


Первое не пробовал, второе делал - эффект то же.
Зато с w:=(Sender as TChildForm).Width;все заработало!
Всем большущее спасибо!


Александр Иванов   (2005-02-01 10:47:00) [2]

procedure TChildForm.FormResize(Sender: TObject);
var
w:integer;
begin
w:=(Sender as TChildForm).Width;
Memo1.Left:=Memo1.Left+Round(W/10);
end;


Skier   (2005-02-01 10:47:00) [3]

А выяснить чему равно ActiveMDIChild  не пробовал ?
Да и вообще дебагером походить ?


Наверх

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