Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
usar variables de otras units

Hola, sigo preguntando cositas si me lo permitis .

Dentro de una procedure de una unit tengo unas variables que queria usar en otra unit para usar el contenido de las mismas, pero no se como hacerlo. Es decir, si se realiza un evento dentro de esa procedure, dependiendo del resultado que envie un dato a otra unidad y que esa unidad ya decida que hacer con ese dato. Puede ser uno o varios.

gracias...

voy aprendiendo
Responder Con Cita
  #2  
Antiguo 16-04-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola anubis, para ello debes declarar en uses la unidad en donde se encuentran definidas las variables.

Por ejemplo:
Código Delphi [-]
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, unit2, StdCtrls;
  // unit2 es la unidad que tiene declarada las unidades
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }

  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  // que haya que hacer
end;

Si Unit1 es la unidad en donde están declarado tus procedimientos, funciones, y eventos... en su sección uses debes indicar que unidades emplear.

Si recien te estas iniciando en Delphi, puedes darle una leída a la Cara Oculta de Delphi 4. Es un libro (pdf) que no tiene desprecio alguno. Te va a servir de mucho para comenzar. No te asustes por lo de delphi 4, si tu usas otra versión da lo mismo, no ha cambiado mucho el lenguaje.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 16-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
se agradece la respuesta.
Te comento, desde el form1-unit1 llamo al form2-unit2, pero si pongo en la unit2 en uses la unit1 me da error porque me pone unit circular, las llamadas a otros forms las hago con showmodal.

Me referia, a que tengo un procedimiento que tiene una variable y me interesaba usar el contenido de esa variable en la unit2 y nose como hacerlo.

Estoy buscando la cara oculta del delphi.

gracias
Responder Con Cita
  #4  
Antiguo 16-04-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Eso se debe a que haz hecho una refencia circular: unit1 llama a unit2 y unit2 llama a unit1.

Para salvar el error, borra la declaración de la unidad de uno de ellos de la sección interface y declara:

Código Delphi [-]
uses
  Unit1; // o Unit2

en la sección implentation.

Para saber más del tema te mando este link:
http://www.clubdelphi.com/foros/show...encia+circular

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 16-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
gracias de nuevo, ya esta corregido, pero sigo sin poder saber como usar una variable y/o contenido en otro form, porque si solo paso una variable como por ejemplo label1, y la quiero visualizar en el otra unidad que tiene otro form, la verdad es uqe no me sale.

Responder Con Cita
  #6  
Antiguo 16-04-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
¿Label1 es una variable de que tipo? ¿O es que label1 es un TLabel?
¿En que form está Label1? ¿En el form al que se le llama?

Te recomiendo que muestres un poco de código para ver que es lo que estás tratando de hacer.
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #7  
Antiguo 16-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Ese es un procedure de la unit entrada

Código Delphi [-]
procedure Tfentrada.lh101Click(Sender: TObject);

  var
   label2:tlabel;
  comp:TShape;
  lbl:TLabel;
  nom:String;
begin
       // Acceder al label
  lbl := TLabel(Sender);
  // Acceder al pabel relacionado con ese label
  nom := copy(lbl.Name, 2, Length(lbl.Name));
  // Con esto si el label es el lh101 nom valdrá h101,
  // buscamos el shape con ese nombre
  comp := TShape(FindComponent(nom));

  fhabitacion.showmodal;
     if comp.brush.color = clYellow then
      begin
      comp.Brush.color:=clRed;
      lbl.font.Color:=clYellow
      end
    else
      begin
      comp.Brush.color:=clYellow;
      lbl.Font.color:=clblack
      end
end;

quiero pasar a la unit habitacion la variable lbl que es un tlabel, pero imagino que valdra para cualquiera.

y para visualizarla en esto form

grfacias de nuevo
Responder Con Cita
  #8  
Antiguo 16-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
gracias, ya esta resuelto. Solo tenia que declarar la variable en public en vez de en la procedure, imagino que sera lo mismo para el type.

gracias de nuevo
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
SESIONES, VARIABLES y otras yerbas juanperez PHP 6 06-03-2007 10:50:08
Cómo acceder a tipos definidos en otras units Bauhaus1975 Varios 2 03-05-2006 11:22:27
Usar ActiveX importados en otras maquinas crijos Varios 1 21-01-2006 21:06:33
Como declarar variables para que las puedan utilizar otras units erocha Varios 1 07-11-2003 23:21:27


La franja horaria es GMT +2. Ahora son las 20:50:42.


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