MaiMenu com Itens criados em run-time
20/05/2008
0
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
Posts
20/05/2008
Paullsoftware
20/05/2008
Emerson Nascimento
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;
Clique aqui para fazer login e interagir na Comunidade :)