Fórum Como identificar ? #293182

26/08/2005

0

Olá amigos da comunidade ... numa aplicação possuo um menu flutuante (popup) contendo 02 itens (palavra1 e palavra2). Os sub-itens de cada item são criados de forma dinâmica (em tempo de execução). De acordo a escolha de um sub-item (clicado) realizo uma filtragem numa tabela.
Então [b:3d5ef4c3cb]a minha dificuldade está justamente em saber qual sub-item foi clicado (escolhido)[/b:3d5ef4c3cb] ?!

Espero ter sido claro ... estou no aguardo para que os amigos possam contribuir de forma a sanar essa minha dúvida.

Grande abraço
Ricardo


Ricvictor

Ricvictor

Responder

Posts

26/08/2005

Adriano Santos

Como foi programado o evento onClick de cada um?
A principio uma simples variável no algoritimo de cada sub-menu poderá sanar o problema, ou use a propriedade Tag de cada sub-menu, existem várias formas.


Responder

Gostei + 0

26/08/2005

Ricvictor

Desde já, obrigado pelo apoio Adriano.

Vamos lá ... seguinte: Eu tenho um cadastro de profissões e um outro de ocupações. Coloquei um popup com esses dois itens (profissão e ocupação). No evento onpopup consulto essas tabelas e carrego os sub-itens para os itens acima citados. Ou seja, a cada nova inclusão nos cadastros ... se o camarada acionar o popup, já vai aparecer o novo item para o sub-menu a que corresponder (se profissão ou se ocupação). E o sub-item escolhido, pego o caption dele e passo como parâmetro para a realização de uma filtragem numa outra tabela (tabela pessoa, por exemplo). Aí é que está ... como saber qual o sub-item clicado ??
Ou seja, não consigo visualizar essa tua idéia justamente por a principio os sub-menus (sub-itens) não existam.

Fico no aguardo

Ricardo


Responder

Gostei + 0

26/08/2005

Adriano Santos

Fiz um exemplo bem básico cara, se liga.

[b:ae8f992565]Inclusão dos itens no menu[/b:ae8f992565]

procedure TForm1.Button1Click(Sender: TObject);
var
  I : Integer;
  Item : TMenuItem;
begin
  for I := 1 to 5 do
  begin
    Item := TMenuItem.Create(Self);
    Item.Caption := ´ITEM´ + IntToStr(I);
    PopupMenu1.Items[0].Add(Item);
    PopupMenu1.Items[0].Items[I-1].OnClick := WindowsClick;
  end;
end;


[b:ae8f992565]Evento WindowsClick[/b:ae8f992565]
[color=red:ae8f992565]É este cara que você tem que programar, ele vai pegar o caption do Item de Menu.[/color:ae8f992565]
Usei TMenuItem(Sender).Caption;, mas experimente digitar TMenuItem(Sender). e aperte CTRL+BARRA DE ESPACO vai acessar normalmente todas a propriedades do Item de Menu.

procedure TForm1.WindowsClick(Sender: TObject);
begin
  Edit1.Text := TMenuItem(Sender).Caption;
end;



Responder

Gostei + 0

26/08/2005

Ricvictor

Porra Adriano ... você é o cara !!! Tá funcionando que é uma maravilha ... [b:bea412e420]obrigado mesmo pelo apoio[/b:bea412e420].

Grande abraço

Ricardo
Natal/RN


Responder

Gostei + 0

26/08/2005

Adriano Santos

Precisando é só gritar....rs...

Aquele abraço


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar