Tform

Delphi

13/10/2005

Olá a todos..


Criei uma TFORM4..... Class TForm.. que possui uma string ´usuario´,,

procedure Tlincenet.ListView1DblClick(Sender: TObject);
var
nova : Tform4;
ponteiro : ^Tform4;
i : integer;
begin

for i:=0 to Screen.FormCount-1 do
 begin
 ponteiro := Pointer(Screen.Forms[i]);
   if ponteiro.usuario =ListView1.ItemFocused.Caption then
    begin
    ShowMessage(´Ja existe´);
    exit;
    end;
 end;

nova := TForm4.Create(self);
nova.Visible := true;
nova.Caption := ´Conversa - ´+ListView1.ItemFocused.Caption;
nova.usuario := ListView1.ItemFocused.Caption;
nova.FreeOnRelease;
end;



To tentando achar um jeito de saber se já existe uma Form com a variavel usuário igual a que setei... Se nao existir criar..

Da mesma forma q depois vou ter q pegar uma form específica onde o usuario tiver uma string específica..


Esse código q postei ali em ciam nao funcionou!

Valeus!


Amon-ra

Amon-ra

Curtidas 0

Respostas

Massuda

Massuda

13/10/2005

Problemas no seu código...[list:2fac16a84f][*:2fac16a84f]Screen.Forms[] é uma lista de TForm´s (ou derivados); em Delphi, raramente você precisa declarar um ponteiro para um objeto[*:2fac16a84f]Não use o método .FreeOnRelease a não ser que você esteja desenvolvendo controles ActiveX[/list:u:2fac16a84f]Uma possível implementação seria...
procedure Tlincenet.ListView1DblClick(Sender: TObject);
var
  nova : Tform4;
  i : integer;
begin

  for i:=0 to Screen.FormCount-1 do begin
    if Screen.Forms[I] is TForm4 then begin
      if TForm4(Screen.Forms[I]).usuario = ListView1.ItemFocused.Caption then begin
        ShowMessage(´Ja existe´);
        Exit;
      end;
    end;
  end;

  nova := TForm4.Create(self);
  nova.Caption := ´Conversa - ´+ListView1.ItemFocused.Caption;
  nova.usuario := ListView1.ItemFocused.Caption;
  nova.Show;
end;



GOSTEI 0
Amon-ra

Amon-ra

13/10/2005

Poxa, maravilha, bastante coisa mesmo que não sabia aprendi com sua postagem.. Deu muito certo, estou bastante agradecido :)


GOSTEI 0
POSTAR