Det er fordi jeg i en procedure ændrer udseendet af formen ret drastisk - jeg danner op i mod 48 buttons, 200 edits, 20 groupbox osv... egenskaberne for alle disse bliver ændret - dvs. de bliver fx flyttet til den rigtige plads på formen osv...
Det er bare noget surt at man skal sidde og kigger på at alle disse bliver dannet og flyttet rundt (tager måske et sekund eller to). Det ville være rart, hvis de alle sammen kom til syne på samme tid...
Jeg har prøvet af ændre deres "visible" properties til "false" umiddelbart efter hver enkelt er dannet og så senere ændre den til "true", men det er stadig ikke optimalt...
Use Invalidate when the entire control needs to be repainted. When more than one region within the control needs repainting, Invalidate will cause the entire window to be repainted in a single pass, avoiding flicker caused by redundant repaints. There is no performance penalty for calling Invalidate multiple times before the control is actually repainted."
Faktisk bliver proceduren også kaldt når programmet åbnes - og der har jeg IKKE problemet - formen kommer til syne med det hele (knapper osv...) placeret rigtigt fra starten... Forstår du mit problem? - Ellers spørg igen... :-)
tjo... det lyder jo rigtigt: "invalidate will cause the entire window to be repainted in a single pass....", men jeg synes ikke det virker... det blinker lige så meget som før... man kan se hver enkelt knap m.m. komme frem en ad gangen - i stedet for alle på én gang...
Lav et panel der fylder hele formen, og sæt dine knapper på panelet. Får du starter opdateringen gør du panelet usynligt, og når du er færdig gør du det synligt igen
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.