![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Hi all!
Возник актуальный вопрос. Я кинул на форму PopupMenu и создал у него кучу Items, subItems, в общем, длинная иерархия. При нажатии на последний элемент иерархии требуется составить историю куда я нажимал. Как это сделать? |
|
#2
|
||||
|
||||
|
Код:
property Parent: TMenuItem; |
| Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
DungeonLords (29.08.2012)
| ||
|
#3
|
|||
|
|||
|
Цитата:
Код:
Form1.Caption:= TMenuItem(Sender).Parent.Parent.Caption+ TMenuItem(Sender).Parent.Caption+ TMenuItem(Sender).caption; |
|
#4
|
||||
|
||||
|
Цитата:
Код:
procedure TForm1.MenuItemClick(Sender: TObject);
var
MenuItem: TMenuItem;
s: String;
begin
MenuItem := Sender as TMenuItem;
s := MenuItem.Caption;
while MenuItem.Parent <> MenuItem.GetParentMenu.Items do
begin
MenuItem := MenuItem.Parent;
s := MenuItem.Caption+' -> '+s;
end;
ShowMessage(s);
end; |
|
#5
|
|||
|
|||
|
Цитата:
Я задал имя Итема TPopul'а как Среднеочаговая(3-7мм)... После выполнения вашего кода получил Среднеочаговая(&3-7мм) Откуда взялся знак & и как от него избавиться? P.S. Если задать имя Итема как, скажем, Среднеочаговая(мм), знак & не появляется... |
|
#6
|
|||
|
|||
|
Это знак, указывающий на активную букву (клавишу) для быстрого выбора меню. Если ты в заголовках не используешь этот знак как значимый, то в итоговой строке просто замени его на пустую строку с помощью StringReplace. Если используешь, то это сложнее. Тогда придется пробегать по строке "руками" и заменять одинарный знак на пустую строку, а двойной - на одинарный.
|