Criando Item de Menu com Anonimous Methods
Autor original: Amarildo Lacerda
Sabe todos aquelas linhas de código para incluir um item no menu “by code”…
- inicializa o item de menu;
- adiciona os parâmetros;
- cria o método para o evento OnClick…
- atribui o evento;
- adiciona o item à lista;
Exemplo VCL para incluir um item de menu usando código:
1
2
3
4
5
6
7
8
9
10
11
12
| procedure TForm40.ClickMenuItem(sender:TObject);
begin
showMessage('menu sem anonimous');
end;
procedure TForm40.FormCreate(Sender: TObject);
var it:TMenuItem;
begin
it := TMenuItem.Create(MainMenu1);
it.caption := 'Teste de um menu sem anonimous';
it.OnClick := ClickMenuItem;
MainMenu1.Items.Add(it);
end; |
procedure TForm40.ClickMenuItem(sender:TObject);
begin
showMessage('menu sem anonimous');
end;
procedure TForm40.FormCreate(Sender: TObject);
var it:TMenuItem;
begin
it := TMenuItem.Create(MainMenu1);
it.caption := 'Teste de um menu sem anonimous';
it.OnClick := ClickMenuItem;
MainMenu1.Items.Add(it);
end;
Métodos “anonimous” é uma poderosa ferramenta presente no Delphi na era XE, que encurta caminhos complexos. Ao reduzir código ao mesmo tempo aumentamos qualidade (com menor ocorrência de bugs) bem como menor tempo de implementação. Se considerar que o maior tempo se gasta em testes e correções de defeitos, então o ganho é exponencial.
Exemplo de uso
1
2
3
4
5
6
7
8
9
10
11
| uses VCL.Menus.Helpers;
//...
procedure TForm40.FormCreate(Sender: TObject);
begin
MainMenu1.Items.CreateAnonimous('Teste menu com anonimous',
procedure begin
showmessage('ok...');
end);
end; |
uses VCL.Menus.Helpers;
//...
procedure TForm40.FormCreate(Sender: TObject);
begin
MainMenu1.Items.CreateAnonimous('Teste menu com anonimous',
procedure begin
showmessage('ok...');
end);
end;
Post baseado em: http://www.tireideletra.com.br/?p=226
Fontes originais: https://github.com/amarildolacerda/helpers
Dúvidas ou sugestões deixe nos comentários do post.
-
InfusTec
-
2.863 views
- 0 comentários
- 15 de março de 2016
Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!
Posts Relacionados - Continue Aprendendo