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

Вниз

Обращение к TMenuItem   Найти похожие ветки 

 
Wood   (2004-11-07 11:48) [0]

Пожалуйста, помогите.
Создаю в run time пункты меню, присваиваю NMenu.name:="nm0". Во время выполнения программы пытаюсь найти (обратиться) к новому пункту меню: if TmenuItem(FindComponent("nm0"))<> nil. А он все равно равен nil.В чем ошибка?
Спасибо.


 
Palladin ©   (2004-11-07 12:37) [1]

а почему он не должен быть равен nil?


 
Wood   (2004-11-07 12:46) [2]

>Palladin [1]
Если компонент TMenuItem создан и у него есть имя (name), то почему он nil? Ведь он существует! Вопрос был "в чем ошибка?"


 
Palladin ©   (2004-11-07 12:49) [3]

где он существует?


 
Anatoly Podgoretsky ©   (2004-11-07 13:04) [4]

В том контейнере он не существует


 
Wood   (2004-11-07 13:13) [5]

Вы говорите загадками. Объясните, пожалуйста


 
Palladin ©   (2004-11-07 13:16) [6]

Я повторяю вопрос. Где он, по твоему мнению, существует?


 
Wood   (2004-11-07 13:16) [7]

Все же, как правильно сделать?
В моем коде такие строки:
procedure....
var NewItem: TMenuItem;
begin
NewItem:=TMenuItem.create(self);
NewItem.name:="nm0";
NewItem.Caption:="New";
end;
Где и как создан этот пункт меню, что я не могу его найти функцией FindComponent(name)?


 
Wood   (2004-11-07 13:19) [8]

Забыл дописать к процедуре создания
Open1.add(NewItem); //(добавляется в пункт главного меню)
Затем FindComponent() или Open1.FindComponent(name) - получается NIL


 
Anatoly Podgoretsky ©   (2004-11-07 13:48) [9]

Какое то загадочное Open1


 
Wood   (2004-11-07 14:03) [10]

Open1 - пункт главного меню, куда добавляется новый Item. Что тут загадочного. Лучше объясните, что не так?


 
Wood   (2004-11-07 14:23) [11]

Open1 - идентификатор пункта главного меню


 
Wood   (2004-11-07 14:52) [12]

Удалено модератором


 
Defunct ©   (2004-11-07 17:33) [13]

> Wood

вот вам примерчик, изучайте:

procedure TForm1.Button1Click(Sender: TObject);
var M : TMenuItem;
   ComponentName : String;
begin

 M := TMenuItem.Create( Self );
 with M do
 Try
   ComponentName := "menu"+IntToStr( MenuIdx );
   Name := ComponentName;
   Caption := Name;
   Inc(MenuIdx);
   try
     TMenuItem( Self.FindComponent("mFile") ).Add( M );
   except
     ShowMessage("there is no component with mFile name");
   end;
   Show
 except
 end;

 if FindComponent( ComponentName )<>nil then
    ShowMessage("there is "+ ComponentName )
end;


 
Wood   (2004-11-07 18:34) [14]

>Defunct [13]
Посмотрю, спасибо



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

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

Наверх




Память: 0.47 MB
Время: 0.04 c
14-1099171977
Yegorchic
2004-10-31 01:32
2004.11.21
Генератор алгоритма


14-1099397598
R.O.O.T
2004-11-02 15:13
2004.11.21
Из-за чего перегружается компьютер


3-1097958798
tchn
2004-10-17 00:33
2004.11.21
кто как хранит документы Word в базе (любой)?


14-1099462223
Sergey_Masloff
2004-11-03 09:10
2004.11.21
На Borland ALM 2005 идет кто?


8-1093273628
redlord
2004-08-23 19:07
2004.11.21
вывод текста не по прямой линии





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