MaiMenu com Itens criados em run-time

20/05/2008

0

wana-wanga!

amigos, estou tentando criar os itens de um MainMenu dinamicamente, em tempo de execução do meu programa.

Conforme é exibido na imagem abaixo

[img:04a4f5a801]http://www.enio.pro.br/mainmenu.jpg[/img:04a4f5a801]

A [b:04a4f5a801]figura 1[/b:04a4f5a801] mostra o MainMenu padrão, somente com os itens que são o padrão do sistema

Na [b:04a4f5a801]figura 2[/b:04a4f5a801] mostra o resultado depois de se criar em tempo de execução, ou seja, ele pega a ordem do ultimo e vai acrescentando.

Já na [b:04a4f5a801]figura 3[/b:04a4f5a801] mostra o [b:04a4f5a801]ideal [/b:04a4f5a801]como deveria ficar após criar os itens,

porem não consegui implementar dessa forma....

para criar os itens eu uso mais ou menos assim

var
  Item, SubItem1, SubItem2 : TMenuItem;
begin
...
 Item := TMenuItem.Create(Nil);
 Item.Caption ´Cadastros´;
 Item.Name := ´cadastros´;

 SubItem1 := TMenuItem.Create(Nil);
 SubItem1.Caption := ´Clientes´;
 SubItem1.Name := ´clientes´;

 SubItem2 := TMenuItem.Create(Nil);
 SubItem2.Caption := ´Fornecedores´;
 SubItem2.name := ´fornecedores´;
  
 SubItem1.Items.Add(SubItem2);
 MainMenu1.Items.Add(SubItem1);
...


qualquer ajuda será bem vinda :D


Eniorm

Eniorm

Responder

Posts

20/05/2008

Paullsoftware

dá uma olhada nesse tópico, o amigo [b:0a74891b25]Neto[/b:0a74891b25] fez um menu dinamicamente pegando as informações de uma tabela e funcionou perfeitamente com ele, espero que te ajudade! :wink:


Responder

20/05/2008

Emerson Nascimento

segue um exemplo:
var
  Item, SubItem1, SubItem2, SubItem3: TMenuItem;
  Indice: integer;
begin
  Item := TMenuItem.Create(Nil);
  Item.Caption := ´Cadastros´;
  Item.Name := ´cadastros´;

  SubItem1 := TMenuItem.Create(Nil);
  SubItem1.Caption := ´Clientes´;
  SubItem1.Name := ´clientes´;

  SubItem2 := TMenuItem.Create(Nil);
  SubItem2.Caption := ´Fornecedores´;
  SubItem2.name := ´fornecedores´;

  Item.Add(SubItem1);
  Item.Add(SubItem2);

  Indice := MainMenu1.Items.Count - 1; // insere na penúltima posição

  MainMenu1.Items.Insert(Indice, Item);

  Item := TMenuItem.Create(Nil);
  Item.Caption := ´Relatórios´;
  Item.Name := ´Relatorios´;

  SubItem1 := TMenuItem.Create(Nil);
  SubItem1.Caption := ´Produtos x Clientes´;
  SubItem1.Name := ´ProdutosXClientes´;

  SubItem2 := TMenuItem.Create(Nil);
  SubItem2.Caption := ´Estoque físico e financeiro´;
  SubItem2.name := ´EstFisFinanceiro´;

  SubItem3 := TMenuItem.Create(Nil);
  SubItem3.Caption := ´Notas fiscais por cliente´;
  SubItem3.name := ´NFClientes´;

  Item.Add(SubItem1);
  Item.Add(SubItem2);
  Item.Add(SubItem3);

  Indice := MainMenu1.Items.Count - 1;

  MainMenu1.Items.Insert(Indice, Item); // insere na penúltima posição
end;



Responder

21/05/2008

Eniorm

wana-wanga!

valeu amigos funcionou perfeitamente....

obrigado!


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

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

Aceitar