Forum > Generale

[Risolto] Run Error (216) - General protection fault

<< < (9/9)

slapshot:

--- Citazione da: slapshot - Aprile 01, 2024, 10:49:29 pm ---Se devi creare a runtime un componente visuale devi procedere alla stesso modo in cui hai creato la form. Non e' assolutamente necessario assegnare la form come owner anche se consigliato, tuttavia la proprietà parent diventa importante.

https://www.askingbox.com/tip/delphi-lazarus-dynamically-create-a-label-at-runtime

--- Termina citazione ---

Inopportuno, il tablet non aveva caricato il resto del tuo codice sorgente.

petrusic:

--- Citazione da: DragoRosso - Aprile 01, 2024, 11:06:47 pm ---@petrusic
A me funziona.
Dove è che usi quel codice ? In un evento ? Quale ?

--- Termina citazione ---

Io eseguo il create e l'emissione della mia Form dinamica dentro una routine.

Però, Udite, Udite: Ora ce l'ho fatta!

Ho inserito le righe enabled  e visible  nel codice del gruppo di istruzioni TForm.Create ed ha funzionato.

--- Codice: ---
procedure AmmortamentoCespiti();     
type
  TtbGrupCespiti = array [0..10, 0..1] of string;   
 . . .
var
  FormAvviso: TForm;
  Lmsg: TLabel;

  swFine: Boolean = False;   
. . .
begin
. . .
  FormAvviso:=TForm.Create(nil);
  with FormAvviso do
  begin
    Height:= 130;
    Left:= 500;
    Top:= 50;
    Width:= 400;
    Position:= poScreenCenter;
    Caption:= 'MOVIMENTI AMMORTIZZABILI';
    Enabled:= True;     <-- NUOVA
    Visible:= True;      <-- NUOVA
  end;

  Lmsg := TLabel.Create(FormAvviso);
  with Lmsg do
  begin
    Parent:= FormAvviso;
    Height:= 80;
    Left:= 10;
    Top:= 20;
    Width:= 300;
    Caption:= 'Ricerca in corso' + lineending + ' ' + lineending + Space(30) + '  A T T E N D I';
    AutoSize:= False;
    Enabled:= True;
    Visible:= True;
    ParentColor:= False;
  end;

   FormAvviso.Show;
   Sleep(200);
   Application.ProcessMessages;

--- Termina codice ---

Finalmente ho finito.   Grazie.

Navigazione

[0] Indice dei post

[*] Pagina precedente

Vai alla versione completa