22 Votos

Delphi: This form of method call only allowed for class methods

Pregunta de Invitado | 23/06/2022 a las 11:15

Tengo dos units en Delphi, cada una correspondiente a una ventana en mi programa. En la primera ventana, definí un procedure, que me gustaría llamar a la segunda ventana.

Mi primer enfoque para llamar al procedure fue el siguiente:

MiProcedimiento(Sender);

Sin embargo, con este enfoque, Delphi no pudo encontrar el procedure, por lo que pensé, tengo que preceder al nombre del formulario (form) para decirle a Delphi dónde se define el procedimiento:

TForm1.MiProcedimiento(Sender);

Sin embargo, este enfoque tampoco lo hace. El programa se compila, pero cuando abre el programa, ocurre el siguiente mensaje de error, con el que no puedo hacer nada:

This form of method call only allowed for class methods

Ya he tratado de definir el procedimiento en la sección public y tales cosas, pero simplemente no funciona. ¿Alguien me puede ayudar?

ResponderPositivoNegativo
2Mejor Respuesta2 Votos

TForm1 es solo el tipo (type), algo así como una descripción de cómo se ve su forma. Por lo tanto, no puede llamar a un procedimiento de este plan de construcción.

Pruébelo con el siguiente enfoque:

Form1.MiProcedimiento(Sender);

En algún lugar al comienzo de su unit, se escribe "Form1: TForm1". Esto significa que "Form1" es del tipo "TForm1". Y por lo tanto, los procedimientos solo pueden llamarse desde "Form1", no "TForm1".
23/06/2022 a las 21:29

ResponderPositivo Negativo
Responder

Temas Relacionados

Aviso Importante

Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.

Participar

Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.