Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.02;
Скачать: CL | DM;

Вниз

Операция :=   Найти похожие ветки 

 
Alex7   (2006-03-20 16:45) [0]

Уважаемые мастера!
В приведенной процедуре хочу
занести в "z"  имя формы, где находится
компонент, получивший фокус.

procedure A (Sender: TObject);
Var x: Tobject;
   z: TComponentName; //  или String;
begin
 x:= TForm(Sender);
 While  not (x is TForm) Do x:= TForm(x).Parent;
z := TForm(x).Name;
end;

TForm(x).Name - получается верное,
а в "z" заносится "".
Помогите разобраться. Спасибо.


 
Сергей М. ©   (2006-03-20 16:49) [1]

Почему Parent, а не Owner ?


 
MBo ©   (2006-03-20 16:54) [2]

С GetParentForm не проще будет?
И как далее используется z?


 
icWasya ©   (2006-03-20 16:56) [3]

более правильно

Function ParentFormName (Sender: TObject):String;
begin
Result:="";
if not (Sender) is TControl then Exit;
While  Sender<>Nil do begin
  if (Sender is TForm) then begin
    Result:=TForm(Sender).Name;
    Exit;
  end;
  Sender :=TControl(Sender).Parent;
end;
end;


 
Плохиш ©   (2006-03-20 16:57) [4]


> z := TForm(x).Name;
  ShowMessage(z);

Что выводиться в сообщении?


 
Alex7   (2006-03-20 16:59) [5]

Спасибо. Так, конечно, проще. Не сообразил.
Но почему все-таки в "z" не заносится?


 
MBo ©   (2006-03-20 17:00) [6]

>Но почему все-таки в "z" не заносится?
Можно посмотреть на реальный код, из которого видно, что действительно "не заносится"?


 
Alex7   (2006-03-20 17:14) [7]

> Что выводиться в сообщении?
В  ShowMessage(z) все правильно,
а в редакторе кода и в окне наблюдений
z = "".  Почему ? Не понимаю.


 
Плохиш ©   (2006-03-20 17:29) [8]


> Почему ?

Оптимизатор в действии, если "z" дальше нигде не используется, то и присваивать ей значения незачем.


 
Alex7   (2006-03-20 17:43) [9]

> Оптимизатор в действии
Понятно. Спасибо.



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

Текущий архив: 2006.04.02;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.043 c
2-1142837401
Федя
2006-03-20 09:50
2006.04.02
Дата и время на оси Х в Сhart ?


15-1141988762
Petr V. Abramov
2006-03-10 14:06
2006.04.02
Вопрос по архивам


3-1139285708
DimonS
2006-02-07 07:15
2006.04.02
Вот народился вопрос по FastReport. Как впихнуть в него условие?


2-1142416756
VitV
2006-03-15 12:59
2006.04.02
DBLookupComboBox-заполнение.


5-1128672402
H010d Freeze
2005-10-07 12:06
2006.04.02
Проблемы с сохранением свойств субкомпонента





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский