Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-12-2013
n03l n03l is offline
Miembro
 
Registrado: feb 2007
Posts: 73
Poder: 18
n03l Va por buen camino
Ayuda con crear un mismo Form varias veces + Thread

Saludos, necesito una ayudita con un problemita que no e podido resolver.

Tengo Un Form mdi principal y un Form hijo en el cual creo un thread para realizar una serie de procesos incluyendo manejo de bases de datos. de esta forma me funciona bien.

el problema que tengo esque quiero crear el Form hijo varias veces pero el problema esque desde e theread hago referencias apuntando al Form1, por ejemplo Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+1;

lo cual no me funciona para el segundo Form

espero me ayuden!!! saludos

Aca el Form mdi Principal
Código Delphi [-]
unit Unit3;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TFrmMain = class(TForm)
    Panel1: TPanel;
    BtnFrm1: TButton;
    BtnFrm2: TButton;
    procedure BtnFrm2Click(Sender: TObject);
    procedure BtnFrm1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FrmMain: TFrmMain;

implementation

uses Unit1;

{$R *.dfm}

procedure TFrmMain.BtnFrm1Click(Sender: TObject);
begin

Form1:= TForm1.Create(Application);
Form1.Label1.Caption:='Soy el Uno';
Form1.Caption:= 'Soy el Uno';
Form1.show;

end;

procedure TFrmMain.BtnFrm2Click(Sender: TObject);
var
F2: TForm1;
begin
F2:= TForm1.Create(Application);
F2.Label1.Caption:='Soy el Dos';
F2.Caption:= 'Soy el Dos';
F2.show;

end;

end.

Aca el Form1 que quiero crear varias veces
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Buttons;

type
  TForm1 = class(TForm)
    BitBtn2: TBitBtn;
    ProgressBar1: TProgressBar;
    Label1: TLabel;
    procedure BitBtn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;



implementation
Uses Hilos;
var
Hilo:THilo;

{$R *.dfm}

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
Hilo:=THilo.Create(True);
Hilo.FreeOnTerminate:=true;
Hilo.Resume;
end;

end.

y aca la unidad del Hilo
Código Delphi [-]
unit Hilos;

interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Buttons;

type
  THilo = class(TThread)
  private
    { Private declarations }
  protected
    procedure Execute; override;
  end;


implementation

uses Unit1;

procedure THilo.Execute;
begin
 Form1.ProgressBar1.Position:=0;
 Form1.BitBtn2.Enabled:=false;
repeat

Form1.ProgressBar1.Position:=Form1.ProgressBar1.Position+1;
 Sleep(500);
until Form1.ProgressBar1.Position=Form1.ProgressBar1.Max;

 Form1.BitBtn2.Enabled:=true;
end;




end.

Claro esta no es mi aplicacion real, es solo un esquema para lograr mi objetivo



Saludos y espero sugerencias.

Última edición por n03l fecha: 23-12-2013 a las 20:46:13.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como evito abrir 2 veces el mismo form? daragor Lazarus, FreePascal, Kylix, etc. 13 14-08-2016 09:37:07
mismo reporte varias veces qreport yossi Impresión 0 20-07-2011 12:13:16
Error Al Crear Varias Veces El Mismo Form ManuelPerez Varios 7 18-09-2007 21:31:02
Quiero liberar my query para usar el mismo varias veces zcatzz Conexión con bases de datos 7 27-01-2007 23:39:45
Abrir varias veces el mismo form Phacko Varios 7 25-09-2004 05:22:01


La franja horaria es GMT +2. Ahora son las 07:16:44.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi