Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];

Вниз

ChildForm вопрос по активной форме   Найти похожие ветки 

 
Lionzi   (2003-10-02 13:55) [0]

Вопрос такой: при открытии нескольких окон по следущей процедуре

begin
if OpenPictureDialog1.Execute then // если файл выбран, то выполнять следующее
begin
ChildForm := TChildForm.Create(Self);//открыть дополнительное окно
ChildForm.Image1.Picture.loadFromFile(OpenPictureDialog1.FileName);//открыть в этом окне заданный файл
ChildForm.Caption := OpenPictureDialog1.FileName;//присвоить окну имя файла
end;


Как положено окна открываются, но в случии необходимости внести изменение в свойства:
begin
if ChildForm.Image1.Stretch = True // если Stretch равно true
then ChildForm.Image1.Stretch := False // то присвоить ему значение false
else ChildForm.Image1.Stretch := True // иначе, присвоить значение true
end;

Изменение действует только на последнюю открытую форму, а не на активную в данный момент.

Как запустить последнюю процедуру для активного в данный момент окна?

Помогите пожалуста решить данную проблему!

Заранее благодарен, Александр.


 
Skier   (2003-10-02 13:57) [1]

TForm.ActiveMDIChild ?


 
Radionov Alexey   (2003-10-02 14:17) [2]

Вот это:
if ChildForm.Image1.Stretch = True // если Stretch равно true
then ChildForm.Image1.Stretch := False // то присвоить ему значение false
else ChildForm.Image1.Stretch := True // иначе, присвоить значение true

заменить этим:
if Assigned(ActiveMDIChild) then
with (ActiveMDIChild as TChildForm).Image1 do
Stretch := not Stretch

А то, что ChildForm показывает на последнюю созданную форму, следует из способа, которым ты их создаешь.
Так что ActiveMDIChild спасет отца русской демократии :)


 
Rem   (2003-10-02 14:26) [3]

Если пишешь проект с динамически создаваемыми формами, то...
на (далекое) будущее:
Выкинь из модуля объявление:
var
ChildForm: TChildForm;
И забудь про эту переменную!

Ну и... убери форму из списка автоматически создаваемых (в настройках проекта).



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.009 c
11-40335
DrFaust
2003-01-21 13:37
2003.10.13
PageControl


1-40491
EvgeniyR
2003-10-02 11:50
2003.10.13
Нужна помощь


6-40547
pavel_guzhanov
2003-08-15 13:31
2003.10.13
Сервер и клиент при помощи Indy


3-40314
Vemer
2003-09-21 12:50
2003.10.13
Как убрать вертикальный Scrollbar DBgrid


14-40622
sancho
2003-09-22 18:30
2003.10.13
Как на человека в инете инфу накопать?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский