Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Узнать index динамического компонента.

-

Вопросы и ответы, обсуждения

- Ваши вопросы по Pascal/Delphi только в данном разделе

Ответ
 
Опции темы
Старый 06.07.2013, 23:44   #1
 Пехотинец
Аватар для NebesaBag
 
NebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражания
Регистрация: 27.12.2011
Сообщений: 73
Популярность: 2425
Сказал(а) спасибо: 334
Поблагодарили 57 раз(а) в 27 сообщениях
 
По умолчанию Узнать index динамического компонента.

Здравствуйте, не знаю как можно получить индекс у динамически созданного подпункта в MainMenu.
Код:
begin
  for i := 0 to ComboBox1.Items.Count - 1 do
  begin
    NewItem := TMenuItem.Create(Self);
    NewItem.Caption := ComboBox1.Items[i];
    MainMenu1.Items[0].Items[0].Add(NewItem);
    NewItem.onClick:=NclickM;
  end;
end;
Создавал так подпункты.
Возникла необходимость брать капчи у этих подпунктов но не знаю как определить индекс компонента на котором клик был.

Код:
procedure TForm1.NClickM(Sender: TObject);
begin
showmessage(MainMenu1.Items[0].Items[0].Items[i].Caption);
end;
Вот какие действия необходимо проделать, чтобы получить индекс я не знаю.
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]


Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Пишу софт на заказ(Delphi / C# / PHP-скрипты). Описывайте задачи и цели софта, сообщайте сумму на которую рассчитываете.
Skype: vinozavr (Молдова)


Кто плюсует популярность, подписывайтесь пожалуйста)

Последний раз редактировалось NebesaBag; 06.07.2013 в 23:47.
  Ответить с цитированием
Старый 07.07.2013, 01:12   #2
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Узнать index динамического компонента.

ибо надо было не так создавать
Код:
begin
  for i := 0 to ComboBox1.Items.Count - 1 do
  begin
    NewItem := TMenuItem.Create(Self);
    NewItem.Caption := ComboBox1.Items[i];
    MainMenu1.Items[0].Items[0].Add(NewItem);
    NewItem.Tag := i;
    NewItem.onClick:=NclickM;
  end;
end;
и так выводить:
Код:
procedure TForm1.NClickM(Sender: TObject);
begin
  ShowMessage(IntToStr((Sender as TMenuItem).Tag));
end;
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).

Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
Пользователь сказал cпасибо:
NebesaBag (07.07.2013)
Старый 07.07.2013, 04:18   #3
 Пехотинец
Аватар для NebesaBag
 
NebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражанияNebesaBag блестящий пример для подражания
Регистрация: 27.12.2011
Сообщений: 73
Популярность: 2425
Сказал(а) спасибо: 334
Поблагодарили 57 раз(а) в 27 сообщениях
 
По умолчанию Re: Узнать index динамического компонента.

Благодарю.
Сделал так
Код:
showmessage
(MainMenu1.Items[0].Items[0].Items[(Sender as TMenuItem).Tag].Caption);
Подскажите почему при выводе текста нужного подменю подчеркивается снизу буква которая по счету равна индексу этого подменю?
Вот примерно если так идёт:
Текст
Текст
Текст
...

Добавлено через 1 час 49 минут
Что-то сразу не додумался, проблема была не велика и вполне решаема стринг реплэйсом)
Код:
procedure TForm1.NClickM(Sender: TObject);
var before,after:string;
begin
before:=MainMenu1.Items[0].Items[0].Items[(Sender as TMenuItem).Tag].Caption;
after:=StringReplace(before, '&', '',[rfReplaceAll, rfIgnoreCase]);
end;
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]


Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
Пишу софт на заказ(Delphi / C# / PHP-скрипты). Описывайте задачи и цели софта, сообщайте сумму на которую рассчитываете.
Skype: vinozavr (Молдова)


Кто плюсует популярность, подписывайтесь пожалуйста)

Последний раз редактировалось NebesaBag; 07.07.2013 в 06:07. Причина: Добавлено сообщение
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 03:09.

Пишите нам: forum@zhyk.ru
Copyright © 2025 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net