Obrigado colegas!

Vou analisar qual a melhor solução a ser implementada.

O que mais pega é que :)
Os 3 parâmetros seriam os botões/captions e o retorno seria qual botão 
foi clicado.

Na verdade esta empreitada seria para fazer uma caixa de mensagens 
personalizada com o diferencial que teria um botão para o usuário clicar 
e salvar em disco a mensagem que foi para o memo (ou similar).

Então... as vezes iria como parametros...
b1, b2, b3 <=> 'cancelar', 'sem caption', 'confirmar'
ou
b1, b2, b3 <=> 'sim', 'não', 'cancela'.
então eu teria que ter o retorno se
foi b1, b2, ou b3 <=> 1, 2 ou 3 clicado...

Mas as idéis de vocês já me valeram demais...
Acho que irei criar uma função
Ex:
-> function mensagem(titulo, texto, b1, b2, b3) : integer;
esta unit eu declaro em meus forms...
ai no aplicativo eu chamaria:
-> if mensagem('excluir o registro', 'todas as consequencias', 
'&exclui', '', '&cancela') = 3 then
     showmessage('pressionou "cancela')

No caso, a unit que conteriar esta função -> mensagem
é que criaria o form em modo -> modal
ex: frm_mensagem... com label, memo, botão para salvar, 3 botões para as 
opções, etc.
e receberia dele os possíveis resultados -> 1, 2, 3
retornando para o form chamador da função -> mensagem
* O modo modal é só para impedir a sobreposição do form.

Vou ver no que dá :)

*** aceito mais sugestões.

Obrigado
Luciano-User-BA

===============================================
Crie um contructor
Constructor CriaShowModal(cOwner : TComponent; Parametro1, P2, X3, :
TipoDesejado )

na Implementação faça

Constructor Tform.CriaShowModal(cOwner : TComponent; Parametro1, P2, X3, :
TipoDesejado );
begin
   inherited Create(cOwner);
  //Trate os seus parametros aqui.. ok;
end;

ai depois vc Faz o

Myformo := TFormo.CriaShowModal(Self, 1,2,3)
if MyForm.showModal = mrOK then
   blalbalablba
===============================================

with Tform_Mensagem.Create(Self) do
    try
        Caption      := 'caption que você quer que aparece no form_mensagem';
        memo1.text   := 'mensagem do memo';
        btn1.caption := 'caption botao 1';
        btn2.caption := 'caption botao 2';
        btn3.caption := 'caption botao 3';
        
        ... Seus parametros...? Crie variáveis na seção public do form_mensagem 
e:

        p4:= parametro4
        p5:= parametro5
        e vai...

        If( ShowModal = mrOk ) then begin
         .... Supondo que você tenha o terceito botao que você tenha 
configurado como mrcancel
         .... no modal result, e o outros dois primeiros como mrnone, e daí, ao 
clicar no botao 1 lá no form_mensagem
         .... cê faria algo do tipo p4 := 'retorno'; 
              ModalResult := mrOk;

         .... Teste seus retornos..

            if p4 blabla.. Then
   
            if p5 blabla.. Then

        end;

    finally
        Free;
    end; 

===============================================
Application.Createform(TForm1, Form1);
Form1.Titulo:='alsdkalskdlasd';
Form1.Mensagem:='Oi';
Form1.bt1:='OK';
Form1.bt2:='Cancelar';
Form1.bt3:='Sei lá';
Form1.ShowModal;
Form1.Free;
===============================================


        

        
                
_______________________________________________________ 
Yahoo! doce lar. Faça do Yahoo! sua homepage. 
http://br.yahoo.com/homepageset.html 



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a