Fórum Duplicar FORM com tudo dentro #262999

22/12/2004

0

Olá amigos!

Estou criando um sistema de chat interno e criei um form que é a janela de conversação do chat, onde há a tela das mensagens, campo para digitar, enviar, componentes sockets, emoticons, etc...

Ele funciona perfeitamente, porém como só existe 1 form, só conversa com uma pessoa ao mesmo tempo.

Preciso de um comando que ´duplique o form´ e tudo o que ele tem nativamente dentro. Assim, eu teria o ´fChatMae´ que seria a base dele e quando tivesse conversando com duas pessoas, teria o fChat1 e fChat2.

Como faço ?

Obrigado desde já.
Att. Willian
bill@gluppy.com


Gluppy

Gluppy

Responder

Posts

22/12/2004

Gluppy

Detalhe: só preciso duplicar o form mesmo.
O sistema de sockets já tenho tudo montado.

Fiz o teste criando ´manualmente´ o segundo form (cópia do primeiro) e deu certo.

Mas acredito que ´criar manualmente uns 50 forms´ nao seria o ´recomendável´, até mesmo porque mudo ele constantemente com novos recursos.


Responder

Gostei + 0

22/12/2004

Paulo_amorim

Olá

Você poderia ter um Array de TfChatMae que conteria as instancias das suas janelas...

Por exemplo, ao clicar em um botão abrir, você incrementaria o array, criaria o Form e trabalharia normalmente:

var forms: array of TfChatMae;
(...)

procedure Button1Click(Sender: TObject);
var
 index: Integer;
begin
  index := Length(forms)+1;
  SetLength(forms, index ); //incrementa o array
  forms[index] := TfChatMae.Create(Application);
  forms[index].Name := ´fChat´ + IntToStr(index);
  forms[index].Caption := ´fChat´ + IntToStr(index);
  forms[index].Show;
end;


Acho que isso funcionaria...
Espero que ajude
Até+


Responder

Gostei + 0

23/12/2004

Gluppy

Obrigado, funcionou certinho!!

Valeu.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar