Fórum Botão pressionado #323111
08/06/2006
0
eu tenho uma funcao que ...
2 botoes...
1 procedure
eu queria assim..
no onclick dos botoes eu coloco
Minha_Procedure;
na procedure eu coloco ..
if botao1.precionado then
faz_isso
Else Botao2.precionado Then
Faz_aquilo.
agora eu nao sei como capturar qual botao foi precionado ...
??????
Mysys
Curtir tópico
+ 0Posts
08/06/2006
Rjun
Gostei + 0
08/06/2006
Btovix
bem, mas eu acho que vc deveria mesmo era usar o evento on click de cada botão!! mas fica a vontade!!
Espero ter ajudado!! grande abraço!!
Gostei + 0
09/06/2006
Rodc
if (Sender is Button1)
Faz_isso...
else
if (Sender is Button2)
Faz_aquilo...
Gostei + 0
09/06/2006
Marco Salles
[b:5fbc49a1e1]Dentro da sua procedure é so testar....[/b:5fbc49a1e1]
if form1.Button2.Focused Then showmessage(´1´) else if form1.Button2.Focused Then showmessage(´2´) else showmessage(´nenhum dos dois´);
Gostei + 0
09/06/2006
Mysys
é um relatorio ....
unica diferenca é nos 2 botoes é que um visualiza e outro imprimi o relatorio é exatamente o mesmo ...
tentei assim :
if (Sender is BTNVisualiza) Then
ppReport.DeviceType := ´Screen´;
Else
ppReport.DeviceType := ´Printer´;
erro :
[Error] URelCop.pas(192): Operator not applicable to this operand type
[Error] URelCop.pas(199): Statement expected but ´PROCEDURE´ found
usar a propriedade Focused nao dá porque eu to usando o ToolBar e nao tem essa opcao..
Usar tag dá mais eu quero saber qual botao foi precionado ...
Gostei + 0
09/06/2006
Martins
[b:ed4a7e1d52]Dentro da sua procedure é so testar....[/b:ed4a7e1d52]
if form1.Button2.Focused Then showmessage(´1´) else if form1.Button2.Focused Then showmessage(´2´) else showmessage(´nenhum dos dois´);
Realmente Marco Salles, esse método é bem mais prático, salvo o q já foi citado por vc sobre o componente TSpeedButton, além de ser menos trabalhoso.
Gostei + 0
09/06/2006
Martins
vc não postou o cabeçalho da sua procedure, mas tente algo como:
Procedure TFormx.suaprocedure(Sender: TObject;....); begin ... if (Sender = BTNVisualiza) Then ppReport.DeviceType := ´Screen´; Else ppReport.DeviceType := ´Printer´; ... end;
Boa sorte!
Gostei + 0
09/06/2006
Mysys
agora sim ...
um abraço .. é isso mesmo
if (Sender = BTNVisualizar) Then
ppReport.DeviceType := ´Screen´
Else if (Sender = BTNImprimir) Then
ppReport.DeviceType := ´Printer´;
Abraço....
Gostei + 0
09/06/2006
Rodc
if (TToolButton(Sender) is BTNVisualiza) Then ppReport.DeviceType := ´Screen´; Else ppReport.DeviceType := ´Printer´;
ou
if (TToolButton(Sender) = BTNVisualiza) Then ppReport.DeviceType := ´Screen´; Else ppReport.DeviceType := ´Printer´;
ou
if (TToolButton(Sender).Name = ´BTNVisualiza´) Then ppReport.DeviceType := ´Screen´; Else ppReport.DeviceType := ´Printer´;
Gostei + 0
09/06/2006
Martins
Blz, é sempre muito bom conseguir ajudar um colega.
Bons códigos
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)