Avatar billede penta Nybegynder
06. november 2003 - 01:18 Der er 6 kommentarer og
1 løsning

Kan man have for mange komponenter på sin form?

Jeg har lavet et lille program.

Når jeg nu sætter en ekstra label ind på min form, så kommer der en accessviolation-fejl, inden programmet er noget at starte op. Fjerner jeg labelen igen er fejlen væk hmmm...det kan jeg ikke forstå. Hvad skyldes denne fejl? Kan det være fordi jeg har for mange komponenter på min form ?
Avatar billede omen Nybegynder
06. november 2003 - 04:05 #1
Det kan det sagtens! VB har f.eks en grænse på omkring 256 objeker på en form!
Avatar billede snowball Novice
06. november 2003 - 08:27 #2
Tror ikke det er det der er galt, for jeg har med nedenstående kode lige prøvet at lave 1000 objekter på min form, og det brokkede den sig (som forventet fra min side) ikke over.

procedure TForm1.Button1Click(Sender: TObject);
var
  i,x,y: Integer;
begin
  x := 1;
  y := 1;
  For i := 1 To 1000 Do Begin
    If i MOD 2 = 0 Then
      With TLabel.Create(self) Do Begin
        Parent := Form1;
        Top := x;
        Left := y;
        Caption := 'Label' + IntToStr(i);
      End
    Else
      With TEdit.Create(self) Do Begin
        Parent := Form1;
        Top := x;
        Left := y;
      End;
    Inc(x,25);
    If x >= Form1.Height Then Begin
      x := 1;
      y := y + 100;
    End;
  End;
end;

penta: Har du prøvet at "step'e" dig igennem programmet for at se hvor præcis det er problemet opstår ?

Snowball
Avatar billede kallesen01 Nybegynder
06. november 2003 - 12:23 #3
Hej en ting det kan være er at der kan være en beskadelig fil i din label og så er der ikke ret meget at gøre, har du prøvet at ligge en eller to mere (dog andre) komponeter ind på formen istedet for en TLabel ?

/Kallesen
Avatar billede penta Nybegynder
06. november 2003 - 15:25 #4
Der er problemer uanset om jeg tager en tedit, tlabel, radiogroup, memo etc.
Avatar billede penta Nybegynder
06. november 2003 - 15:26 #5
det var en fejl at acceptere så tidligt. Håber du/I vil hjælpe mig alligevel :)
Avatar billede penta Nybegynder
06. november 2003 - 15:29 #6
Hvis jeg f.eks. bare gør en tekst FED - så kommer der også en fejl...hmmm?
Avatar billede penta Nybegynder
06. november 2003 - 15:48 #7
ahhhh jeg har rettet fejlen. Hmm jeg havde to formcreate(); fordi jeg har to forms. Jeg ændrede nu dette så jeg i hovedformen havde FormCreate og i min anden form en FormShow();...Dette har løst mit problem ;)
Jeg siger mange tak for hjælpen og så glemmer vi bare det med de point:))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester