Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-10-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Para el simple cambio de una propiedad de un botón que en un principio pregunta, a parte de lo dicho por Lepe, se me ocurre la creación de una variable pública a estás 2 ventanas susceptibles de recibir cambios desde el exterior y cada vez que se muestren o se creen en el evento correspondiente de estas 2 ventanas comprobar el valor de la variable en cuestión y reaccionar como corresponda.
Código Delphi [-]
        if lDisponible = True then
        MiBoton.Enabled:= True
        else
  MiBoton.Enabled:= False;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.

Última edición por marcoszorrilla fecha: 30-10-2004 a las 15:18:48.
Responder Con Cita
  #2  
Antiguo 30-10-2004
djj djj is offline
Registrado
 
Registrado: oct 2004
Posts: 4
Poder: 0
djj Va por buen camino
Unhappy

Solo con añadir los form a las uses, no es suficiente xq al intentar cambiar la propiedad del boton de un form hijo al otro da error de access violation.
Responder Con Cita
  #3  
Antiguo 30-10-2004
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
porque la ventana de destino no está creada todavia
Responder Con Cita
  #4  
Antiguo 30-10-2004
djj djj is offline
Registrado
 
Registrado: oct 2004
Posts: 4
Poder: 0
djj Va por buen camino
si esta creada, mira yo hago lo siguiente, tengo un Form1 que es el form primcipal, y luego tendo dos form hijos, form2 y form3, yo desde form 1 con un boton creo y muestro form2 y desde form2 con otro boton creo y muestro el form3, form2 y form3 son hijos de form1. estando los dos formularios hijos creados yo desde form3 no puedo cambiar ninguna propiedad del form2.
Responder Con Cita
  #5  
Antiguo 30-10-2004
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.070
Poder: 32
jhonny Va camino a la famajhonny Va camino a la fama
Bueno, creo que seria conveniente que pusieras el codigo que estas usando en los tres botones de los tres formularios...

Pues con lo que te ha dicho Lepe y con la sugerencia de Marcos ya debe bastar.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #6  
Antiguo 30-10-2004
djj djj is offline
Registrado
 
Registrado: oct 2004
Posts: 4
Poder: 0
djj Va por buen camino
Veamos...

Form1:

Código:
uses Unit2, Unit3; 
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  With TForm2.Create(Self) Do
	Begin
	  Show;
	end;
end;
Form2:

Código:
uses Unit1, Unit3;
 
procedure TForm2.Button2Click(Sender: TObject);
begin
  With TForm3.Create(Self) Do
	Begin
	  Show;
	end;
end;
Form3:
Código:
uses Unit1, Unit2;
 
procedure TForm3.Button3Click(Sender: TObject);
begin
  Form2.Button2.Enabled := False;
end;
Tenemos el Form1 que es el form padre, Form2 y Form3, los form hijos.
- Desde el Form1 creamos y mostramos el Form2.
- Desde el Form2 creamos y mostramos el Form3.
- Desde el Form3 intentamos cambiar el enabled del Boton que esta en el Form2 y nos da Access Violation.

¿por que?...
Responder Con Cita
  #7  
Antiguo 30-10-2004
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.070
Poder: 32
jhonny Va camino a la famajhonny Va camino a la fama
Ok, prueba a hacerlo todo asi:

En primer lugar si tu aplicacion es MDI no necesitas el Show...

Form1:

Código Delphi [-]
uses Unit2; // Si no abres el form3 directamente 
               //desde el 1 no hay necesidad de tenerlo en el uses

procedure TForm1.Button1Click(Sender: TObject);
begin
  form2 := TForm2.Create(Application);
end;

Form2:

Código Delphi [-]
uses Unit3; // Si no trabajaras con el form1 directamente 
               //no hay necesidad de tenerlo en el uses...

procedure TForm2.Button2Click(Sender: TObject);
begin
  form3 := TForm3.Create(Application);
end;

Form3:

Código Delphi [-]
uses Unit2; // Si no trabajaras con el form1 directamente 
               //no hay necesidad de tenerlo en el uses...

procedure TForm3.Button3Click(Sender: TObject);
begin
  Form2.Button2.Enabled := False;//Asi esta bien...
end;

espero te sirva.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
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


La franja horaria es GMT +2. Ahora son las 20:57:17.


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