Det er noget af det der er lidt svært at få til at køre ordentligt ude i virkeligheden...
Jeg ville nok starte med at kikke på nogle af flagene til SetWindowPos, først og fremmest SWP_NO* og se om jeg kan få det til at virke bedre på den måde.
Men det er sjældent en god ide at lave en stor mængde GUI opdatering i en loop, oftest er det bedst at sende en besked til vinduet selv, for hver opdatering (eller et antal opdateringer) dermed undgår man at message køen bliver for fuld.
Hvis du kan lave et komplet men simpelt eksempel der viser problemet, kan jeg godt prøve at eksperimentere lidt med det.
Mange tak for feedback!
Jeg vil prøve med at ændre flags, når jeg for lejlighed ved fyraften :) Jeg vil herom vende tilbage senere i dag.
Det lyder meget spændende. Jeg har selv overvejet call-stack-problemstillingen ifm. lidt Google-søgning, men jeg nåede aldrig selv til en konklusion. Du nævner i denne forbindelse, at call-stacken kan overfyldes, og forstlår derfor, at jeg i stedet sender en enkelt besked til vinduet der skal resizes, der således selv resizer og animerer. Er dette rigtigt forstået? Dette stiller mig dog tilbage med et enkelt spørgsmål; hvorledes har dette indflydelse på call-stack? Vil der ikke være lige mange beskeder sendt, uanset hvorfra jeg kalder SetWindowPos (antagende at SetWindowPos selv sender en besked hver gang den kaldes)? Er det noget jeg misorstår?
Den sidste del lyder også meget interessant! :)
Når du nævner et komplet men simpelt eksempel, mener du da i ord eller kode?
Mange tak for hjælpen!
Hej igen,
Jeg har prøvet med alle SWP_NO*-flag (også i kombination), og det giver desværre samme resultat.
Jeg har desuden også prøvet at ligge hele SetWindowPos-løkken i en WM_COMMAND under-command, men med samme resultat.
Det var mere besked køen end call-stack jeg var bekymret for.
Med simpelt eksempel mente jeg kode, jeg tror godt jeg forstå problemet.
Hej,
Jeg sad og arbejdede lidt på det i går aftes, og det ser ud til, at problemet ikke er der længere. Jeg har brugt din metode med at sende en custom besked to hoved-vinduet, der således selv tager sig af bevægelsen, vha. MoveWindow. Dit forslag virkede således alligevel, så for dét må du gerne smide et svar :)
Tak for hjælpen!
Jeg samler ikke på point, så lav selv et svar og accepter det, så bliver spørgsmålet lukket og du får dine point tilbage.
Helt i orden - du skal dog have tak, uanset pointuddeling ;)