RES: [RESOLVIDO!] [delphi-br] Mudar onClick de TMenuItem sem precisar reescrever onClick dos forms

2010-07-27 Por tôpico thevortex78
Bom dia Elazar , meu amigo Rafael Escher encontrou uma solução muito
elegante para esse problema, que consiste em interceptar a chamado ao click
do TMenuItem:

 

unit unit3;

 

interface

 

uses dialogs, Menus;

 

 

type

  TMenuItem = class(Menus.TMenuItem)

  public

procedure Click; override;

  end;

 

implementation

 

{ TMenuItem }

 

procedure TMenuItem.Click;

begin

  showmessage('José');

  inherited;

end;

 

end.

 

Dae no form onde o menu esta, é só dar o uses na seção interface à esta
unit3 e usar o onclick, que o compilador faz o resto.

 

Obrigado a todos.

 

Atenciosamente.

 

José Ricardo Aviles. 
assinatura1

( Tel.: 19 3868-7185
( Cel.: 19 8173 0077 
* E-mail:  mailto:jravi...@stiware.com.br jravi...@stiware.com.br  
Skype: stiware

 

De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Elazar Dornelles Ceza
Enviada em: sexta-feira, 23 de julho de 2010 14:50
Para: delphi-br@yahoogrupos.com.br
Assunto: Res: [delphi-br] Mudar onClick de TMenuItem sem precisar reescrever
onClick dos forms

 

  

Boa tarde;

Você vai precisar mudar o metodo (onclick) chamado pelos menus de alguma
forma, 
pode ser por código (loop, findcomponent) ou manualmente, fazendo os itens
de 
menus chamar uma unica rotina (que marca o item como recente e atualiza os 
atalhos mais utilizados e que por seguinte execute o metodo original do menu

realizando a tarefa para qual o menu é proposto).

Atenc;
Elazar Dornelles Ceza


De: thevortex78 thevorte...@yahoo.com.br
mailto:thevortex78%40yahoo.com.br 
Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br 
Enviadas: Sexta-feira, 23 de Julho de 2010 12:41:00
Assunto: [delphi-br] Mudar onClick de TMenuItem sem precisar reescrever
onClick 
dos forms

Bom dia a todos.
Eu implementei em meus sistemas, uma recurso para colocar na area de
trabalho
as opções que o cliente mais usa e os itens recentes, ex. o cliente usa mais
pedido de vendas e cadastro de clientes entao ele coloca nessa area de
trabalho
os icones dessas opções a partir de um treeview, sem precisar ficar indo em
menus.

Tudo funciona legal tem esse treewview que le as informações dos itens de um
TMainMenu e preenche esse treeview com elas, entao quando o usuario acessa
um
form pelo treeview, o sistema marca a opção como recente, como no word e tal
ou
por um click no botão direito ele pode adicionar aos favoritos dessa area de
trabalho.

O problema é que quando o usuario acessa a opção pelo item do TMainMenu, ele
nao
marca como recente, claro. A pergunta é: tem como eu colocar minha função
marca_recente para ser acessada no onClick do TMenuItem sem precisar
reescrever
os eventos onClick de todos os itens de menus de todos os sistemas.

Desde ja, muito obrigado a todos.

José Ricardo Aviles.

[As partes desta mensagem que não continham texto foram removidas]





[As partes desta mensagem que não continham texto foram removidas]



Res: [RESOLVIDO!] [delphi-br] Mudar onClick de TMenuItem sem precisar reescrever onClick dos forms

2010-07-27 Por tôpico Elazar Dornelles Ceza
Bom dia;

Eu uso bastante isto;
Realmente vai solucionar seu problema de não ter que reescrever todos os 
eventos 
onclick, nem sei porque não pensei nisto :-))

Atenc;
Elazar Dornelles Ceza






De: thevorte...@yahoo.com.br thevorte...@yahoo.com.br
Para: delphi-br@yahoogrupos.com.br
Enviadas: Terça-feira, 27 de Julho de 2010 9:48:01
Assunto: RES: [RESOLVIDO!] [delphi-br] Mudar onClick de TMenuItem sem precisar 
reescrever onClick dos forms

  
Bom dia Elazar , meu amigo Rafael Escher encontrou uma solução muito
elegante para esse problema, que consiste em interceptar a chamado ao click
do TMenuItem:

unit unit3;

interface

uses dialogs, Menus;

type

TMenuItem = class(Menus.TMenuItem)

public

procedure Click; override;

end;

implementation

{ TMenuItem }

procedure TMenuItem.Click;

begin

showmessage('José');

inherited;

end;

end.

Dae no form onde o menu esta, é só dar o uses na seção interface à esta
unit3 e usar o onclick, que o compilador faz o resto.

Obrigado a todos.

Atenciosamente.

José Ricardo Aviles. 
assinatura1

( Tel.: 19 3868-7185
( Cel.: 19 8173 0077 
* E-mail:  mailto:jravi...@stiware.com.br jravi...@stiware.com.br 
Skype: stiware

De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de Elazar Dornelles Ceza
Enviada em: sexta-feira, 23 de julho de 2010 14:50
Para: delphi-br@yahoogrupos.com.br
Assunto: Res: [delphi-br] Mudar onClick de TMenuItem sem precisar reescrever
onClick dos forms

Boa tarde;

Você vai precisar mudar o metodo (onclick) chamado pelos menus de alguma
forma, 
pode ser por código (loop, findcomponent) ou manualmente, fazendo os itens
de 
menus chamar uma unica rotina (que marca o item como recente e atualiza os 
atalhos mais utilizados e que por seguinte execute o metodo original do menu

realizando a tarefa para qual o menu é proposto).

Atenc;
Elazar Dornelles Ceza


De: thevortex78 thevorte...@yahoo.com.br
mailto:thevortex78%40yahoo.com.br 
Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br 
Enviadas: Sexta-feira, 23 de Julho de 2010 12:41:00
Assunto: [delphi-br] Mudar onClick de TMenuItem sem precisar reescrever
onClick 
dos forms

Bom dia a todos.
Eu implementei em meus sistemas, uma recurso para colocar na area de
trabalho
as opções que o cliente mais usa e os itens recentes, ex. o cliente usa mais
pedido de vendas e cadastro de clientes entao ele coloca nessa area de
trabalho
os icones dessas opções a partir de um treeview, sem precisar ficar indo em
menus.

Tudo funciona legal tem esse treewview que le as informações dos itens de um
TMainMenu e preenche esse treeview com elas, entao quando o usuario acessa
um
form pelo treeview, o sistema marca a opção como recente, como no word e tal
ou
por um click no botão direito ele pode adicionar aos favoritos dessa area de
trabalho.

O problema é que quando o usuario acessa a opção pelo item do TMainMenu, ele
nao
marca como recente, claro. A pergunta é: tem como eu colocar minha função
marca_recente para ser acessada no onClick do TMenuItem sem precisar
reescrever
os eventos onClick de todos os itens de menus de todos os sistemas.

Desde ja, muito obrigado a todos.

José Ricardo Aviles.

[As partes desta mensagem que não continham texto foram removidas]

[As partes desta mensagem que não continham texto foram removidas]


 


  

[As partes desta mensagem que não continham texto foram removidas]