Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Un form enfadado. No quiere a nadie (ni a sí mismo) (https://www.clubdelphi.com/foros/showthread.php?t=43047)

Bicholoco 30-04-2007 12:36:04

Un form enfadado. No quiere a nadie (ni a sí mismo)
 
Hola a todos:

Mi problema es que tengo una aplicación con varios Form. Pero solo me da errores uno de ellos. En adelante le llamaré Form2

En este Form2 todo funciona correctamente. Pero en cuanto hago una llamada a otro Form (o a sí mismo) me da error.

Ejemplo de cosas que me dan error:
Código Delphi [-]
Unit unit2;
........
........
........

function distancia(Form :TForm2):Integer;
begin
Result:=Form.Scrollbar1.Position;
end;

procedure TForm2.FormCreate(Sender: TObject);
var
a:integer;
begin
a:=distancia(Form2);
end;

Otro caso similar que también da error
Código Delphi [-]
implementation
uses Unit7;
........
........
Form2.Image1.Picture:=Form7.Image1.Picture;

El programa se compila sin problemas, pero da un error del tipo "access violation at address XXXX in module XXX.exe. Read of address XXXX " al ejecutarlo.

En resumen, desde form2 no puedo llamara a ningún form.
¿Alguna idea de lo que puede ser?

Neftali [Germán.Estévez] 30-04-2007 13:21:24

Intenta poner ese código en el OnShow, por ejemplo, en lugar del OnCreate y haz la prueba.

Bicholoco 30-04-2007 14:29:15

Muchas gracias.

Lo del Onshow seguía dando el mismo problema.

Al parecer, el problema se originaba por una matrices de tamaño variable (variant) que no estaban correctamente definidas.
Aun así, no sé porqué eso afectaba a lo de
Form2.Image1.Picture:=Form7.Image1.Picture;

Tal vez sea porque, en programación, cuando una cosa va mal, todo lo demás va mal.

Gracias


La franja horaria es GMT +2. Ahora son las 22:28:22.

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