[Delphi] ListView -> PopUpMenu

0

Sprawa troche zawiła... robie w swojej apliakcji pewnego Menadzera i chciałbym by nazwy głównych itemów w Listview przepisano do PoUpmenu...
Pierwszy etap (pomocny okazał sie przykład z FAQ) powinien wygladac tak:
ale nie działa :(

var
i:integer;
Menu : TMenuItem;
begin
for i := 0 to ListView1.Items.Count -1 do
begin
  Menu := TMenuItem.Create(Self);
  Menu.Caption := ListView1.Items[i].Caption;
  PopupMenu1.Items.Add(Menu);
end;

Druga nawet istotniejsza sprawa: jaka będzie procedura która po kliknieciu na pozycje w PopUpMenu zwróci mi wszystkie nazwy subitemów należace do danego Itemka z ListView (tego wcześniej przepisanegodo PoUpMenu)

0

var
i:integer;
Menu : TMenuItem;
begin
for i := 0 to ListView1.Items.Count -1 do
begin
Menu := TMenuItem.Create(Self);
Menu.Caption := ListView1.Items[i].Caption;
PopupMenu1.Items.Add(Menu);
end;

Menu := TMenuItem.Create(Self); nie wydaje mi się, aby miało to sens - konstruktor w parametrze ma właściciela nowego elementu - powinień podać tam
PopupMenu1. Brakuje też nazwy nowego elementu - ale tego nie trzeba (dla porządku).

Druga nawet istotniejsza sprawa: jaka będzie procedura która po kliknieciu na pozycje w PopUpMenu zwróci mi wszystkie nazwy subitemów należace do danego Itemka z ListView (tego wcześniej przepisanegodo PoUpMenu)

Trzeba go wyszukać i coś jak SubItems.

0

oki thx teraz juz wiem ze miało być tak:

var
i:integer;
Menu : TMenuItem;
begin
for i := 0 to ListView1.Items.Count -1 do
begin
  Menu := TMenuItem.Create(PopUpMenu1);
  Menu.Caption := ListView1.Items[i].Caption;
  PopupMenu1.Items.Add(Menu);
end;

ciągle jednak nie wiem jak zrobić Etap 2 czyli: po kliknięciu na pozycje pokazywac nazy Subitemów...
HELP :)

0
for i := 0 to ListView1.Items.Count -1 do
begin
  Menu := TMenuItem.Create(PopUpMenu1);
  Menu.Caption := ListView1.Items[i].Caption;
  Menu.Tag:=i;
  Menu.OnClick:=Nazwa;
  PopupMenu1.Items.Add(Menu);
end;

procedure TForm1.Nazwa(Sender : TObject);
begin
ShowMessage(ListView1.Items[TMenuItem(Sender).tag].SubItems.Text);
end;

// Stosuj proszę tag <d e="e" l="l" p="p" h="h" i="i"> - Q

0

A może to troche lamersko zabrzmi ale nie mama pomysłu aktualnie:
A jakbym chciał wstawić każdego Itema i podległe pod niego Subitemy każdy do oddzielnego Edita ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1