Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Array de paneles (TPanel) (https://www.clubdelphi.com/foros/showthread.php?t=20754)

VRO 25-04-2005 11:07:02

Array de paneles (TPanel)
 
HOla vereis, hoy lunes estoy un tanto empanada y no encuentro el error:

Estoy creando un array de paneles(TPanel) en el formulario principal , en la funcion ONCreate de dicho Form,

Os posteo el codigo de todo el formulario:

Código Delphi [-]
 
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;
 
type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
    p:array [1..37,1..15] of TPanel;
    procedure FormCreate(Sender: TObject);
  end;
 
var
  Form1: TForm1;
implementation
 
{$R *.dfm}
 
procedure TForm1.FormCreate(Sender: TObject);
var i,j:integer;
begin
 for i:=1 to 37 do
  for j:=1 to 15 do
   begin
    p[i,j]:=tPanel.Create(Self);
    p[i,j].Left:=0;
    p[i,j].Top:=16;
    p[i,j].Width:=50;
    p[i,j].Height:=25;
 end;
end;
end.

pero no hace nada , nada más ejecutar me da el siguiente error:

Class EReadError with message 'Error reading Form1.OnCrete.Invalid property value'. Process
He hecho la misma prueba con TButtons, ya que venían en un hilo de este foro, pero nada el mismo error.

¿Porque da ese error?¿Dñonde estoy metiendo la gamba?

Gracias por todo.

kalimero 25-04-2005 11:15:03

Hola.

Bueno, me da la impresión, de que el evento OnCreate del Form puede que no sea el mejor lugar para crear los paneles. Ten en cuenta que todavia no tienes seguridad en que el form se ha creado. Prueba a poner el mismo codigo en otro evento como por ejemplo , OnShow.

Saludos

VRO 25-04-2005 11:29:32

Muchas gracias, te iva a decir que en OnShow me daba el mismo error,

pero ya le encontré, si te fijas en el código el OnCrete está declarado como función publca en vez de función propia del form1 no se si me he explicado, es decir, tenía que estar declarado debajo de

Código Delphi [-]
 TForm1 = class(TForm)
Pienso que es eso porque ya no me da el error, pero tampoco me he fijado lo que sale , he corrido a decirtelo

Eternamente agradecida.


La franja horaria es GMT +2. Ahora son las 00:47: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