![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Items в TMainMenu [D7, WinXP]
Александр Семак © (2007-12-06 05:35:00)Как узнать номер Item'a (пункта меню) в компоненте TMainMenu по которому кликнули?
Johnmen (2007-12-06 10:09:00) [1]
> Думкин © (06.12.07 10:05) [12]
Да.
Думкин (2007-12-06 10:05:00) [2]
> Johnmen © (06.12.07 10:02) [9]
И что? Я ответил в 11?
Думкин (2007-12-06 10:04:00) [3]> Johnmen © (06.12.07 09:56) [7]
Я не спорю, что вместо того кода можно было привести одно свойство. Но я давно не писал на Дельфи и потому навскидку потыкал в то, как бы я искал индекс. Получилось то, что написал. Ты об этом спрашиваешь?
Dib@zol (2007-12-06 10:03:00) [4]Да чего мелочиться-то? MenuItemFromPoint и всех делов %)
Johnmen (2007-12-06 10:02:00) [5]
> Думкин © (06.12.07 09:58) [8]
> Я не понимаю тебя.
Зачем так накручивать в [1], если это обработчик существующего пункта, а значит однозначно имеющего парент?
Думкин (2007-12-06 09:58:00) [6]> Johnmen © (06.12.07 09:56) [7]
А в [4] понятно? Я не понимаю тебя.
Johnmen (2007-12-06 09:56:00) [7]
> Думкин © (06.12.07 09:51) [6]
Нет.
Мне не понятно, зачем нужен парент, чтобы узнать индекс. в [1].
Думкин (2007-12-06 09:51:00) [8]> Johnmen © (06.12.07 09:41) [5]
Спроси у Борланда.
Или ты спрашиваешь, зачем я привел код, и в которм не сравнил родителя на пусто, а не воспользовался свойством. которое использует метод, который таки проверяет это? Привел, чтобы показать где это индекс сидит. Это преступление?
Johnmen (2007-12-06 09:41:00) [9]
> Думкин © (06.12.07 09:33) [4]
Я опять не понял, причем тут парент?
Думкин (2007-12-06 09:33:00) [10]> Johnmen © (06.12.07 09:28) [3]
function TMenuItem.GetMenuIndex: Integer;
begin
Result := -1;
if FParent <> nil then Result := FParent.IndexOf(Self);
end;
Johnmen (2007-12-06 09:28:00) [11]
> Думкин © (06.12.07 07:13) [1]
Что это??? :)
> Александр Семак (06.12.07 05:35)
TMenuItem(Sender).MenuIndex
Александр Семак (2007-12-06 07:34:00) [12]спасибо
Думкин (2007-12-06 07:13:00) [13]procedure TMainForm.NClick(Sender: TObject);
var mm1,mm2 : TMenuItem;
begin
mm1 := TMenuItem(Sender);
mm2 := mm1.Parent;
Caption := IntToStr(mm2.IndexOf(mm1))
end;