![]() |
löschen sich komponenten ?
ich habe folgendes problem: ich habe meine 21 labels auf der form und will diese neu ordnen... nach der umstellung sind aber nicht mehr 21 sondern nur ca 15 übrig...nachdem ich dann mit nem showmessage jeden schritt angeschaut hab sah ich, dass wenn ein label auf seiner "reise" über ein anderes läuft, dieses nur mehr verkrüppelt / gar nicht zu sehen ist...wie kann ich das verhindern mit hide gehts nicht..
könnte ich das vielleicht mit ner neuen form machen , auf der alles wie auf der alten ist? muss ich die von vorneherein haben (wenn ja wie mach ich 2?)oder kann ich die mit create machen(versuch ist schon gescheitert, die kommt einfach nicht...) HIIIIIIILFEEE!!!! :freak: |
Re: löschen sich komponenten ?
Kann ich nicht ganz nachvollziehen.
Poste doch mal den Source als Attachement oder so. Was verstehst du unter "ordnen" und "umstellung" stefan |
Re: löschen sich komponenten ?
nun gut.. ^^ also die 21 labels werden erzeugt:
Delphi-Quellcode:
neu geordnet:
for i:=1 to 3 do begin
for j:= 1 to 7 do begin case i of 1:arr1[j]:=TLabel.Create(Form1); 2:arr2[j]:=TLabel.Create(Form1); 3:arr3[j]:= TLabel.Create(Form1); end; end;
Delphi-Quellcode:
if rblinks.checked then begin
for i:= 1 to 21 do begin case i of 1..7:stapel[i]:=arr2[i]; 8..14:stapel[i]:=arr1[i-7]; 15..21:stapel[i]:=arr3[i-14]; end; end;
Delphi-Quellcode:
dann versuche ich sie wieder zu positionieren.. dann kommt das problem...
for j:=1 to 7 do begin
for i:=1 to 3 do begin case i of 1: arr1[j]:=stapel[j*3-2]; 2: arr2[j]:=stapel[j*3-1]; 3: arr3[j]:=stapel[j*3]; end; end; end; |
Re: löschen sich komponenten ?
HI,
tausche doch mal die [code] Tags mit [delphi] Tags aus ;) ...:cat:... |
Re: löschen sich komponenten ?
ja toll aber wie wärs mit nem lösungsvorschlag? :wink:
|
Re: löschen sich komponenten ?
Mir ist immer noch nicht klar WAS du überhaupt machen willst...
Wie wärs wenn du mal den kompletten Sourcecode alls Attachement posten würdest, dann kann sich das mal jemand anschauen. stefan |
Re: löschen sich komponenten ?
Liste der Anhänge anzeigen (Anzahl: 1)
kk hier kommt die pas datei...
|
Re: löschen sich komponenten ?
Du führst das TLabel.Create... bei JEDEM Button-Klick aus! Das ist sicher nicht so gewollt...
stefan |
Re: löschen sich komponenten ?
ja nee dehalb ja button1.enabled:=false .. die andere routine regelt der 2. button
|
Re: löschen sich komponenten ?
moin,
so gehts:
Delphi-Quellcode:
//Karten neu legen
for i:=1 to 3 do begin for j:=1 to 7 do begin case i of 1: arr1[j]:=stapel[j]; 2: arr2[j]:=stapel[7+j]; 3: arr3[j]:=stapel[14+j]; end; end; end; |
Re: löschen sich komponenten ?
juhuuuuuu :D :-D danke man du hast mir echt noch ne schlaflose nacht erspart ^^.. aber warum geht das so und mit meiner lösung nicht? ich hab nachgerechnet der spricht auch so alle mitglieder des arrays an... :gruebel: trotzdem nochmal danke ! :cheers:
|
Re: löschen sich komponenten ?
muss mich leider berichtigen ich weiss warum es funzt: es ist nicht das was ich will (halo murphy's law :P)... naja ich komm schon noch dahinter... :mrgreen:
|
Re: löschen sich komponenten ?
hi, was war nochmal dein Problem genau? Das nachher nur noch mehr 15 Labels da sind?
Sofern ja, läge dann der Fehler in deiner Berechnung der jeweilig neuen Left-Koordinate deiner Labels. Für die Labels in den drei Arrays (arr1,arr2,arr3) ergäben sich dann nämlich folgende Left-Positionen: arr1: 30, 60, 90, 120, 150, 180, 210 arr2: 60, 120, 180, 240, 300, 360, 420 arr3: 90, 180, 270, 360, 450, 540, 630 Wenn man jetzt genau hinguckt, dann haben also 6 Labels immer solche Left-Koordinaten, die mit denen anderer identisch sind, ergo: es gibt also immer 6 Labels die direkt unter anderen liegen und damit nicht mehr sichtbar sind, Resultat: zu sehen sind damit also immer nur noch mehr jeweils 15. ...wie gesagt, nur sofern es das auch war, was dich störte :-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz