gromar Skrevet 21. september 2005 Del Skrevet 21. september 2005 hallo, Jeg lurer på om det er noen mulighet og oppdatere det grafiske i en form fra en annen thread, mens formen og dermed "hovedtråden" er opptat? Eller finnes det noen måte å lage en form/dialog med sin egen thread? .:martin Lenke til kommentar
sinnaelgen Skrevet 21. september 2005 Del Skrevet 21. september 2005 Jeg vet ikke om jeg forstod deg helt rett. hva ned å brusje refres eller repairnt. eks. minform.repaint. eller label1.repaint for å bare opdatere label1 og hvis du har laget en egen komponet : minkomponet.refresh minform er navnet på den formen du har laget . Lenke til kommentar
efikkan Skrevet 21. september 2005 Del Skrevet 21. september 2005 Om jeg forstod deg rett, så vil det være mulig å lage til en Timer som tegner opp slik som elg-elg123 sa. Lenke til kommentar
gromar Skrevet 21. september 2005 Forfatter Del Skrevet 21. september 2005 Vel det vil desverre ikke virke. Problemet er at når en tråd står å "tygger" på en alogrite så vil den ikke merke at timer sender en event før etter den er ferdig, og det er under denne tiden jeg vil at en progressbar skal stå og gå slik at brukeren ikke tror programmet har hengt seg. Spørsmålet er om jeg kan får en tråd til å kjøre en refresh eller en repaint, uten at denne blir synket til hovedtråden, eller om jeg kan lage en ny form som har sin egen tråd? .:martin Lenke til kommentar
DidzisK Skrevet 22. september 2005 Del Skrevet 22. september 2005 Skal du ha progressbar, må du sende progressinfo til progressbaren, altså avbryte algoritmen av og til for å sette ProgressBar.Position:=... og Application.ProcessMessages for å trigge at formen blir tegnet på nytt. Hvis jeg har mange steg (10000) i algoritmen, pleier jeg å sette det slik at oppdatering av progressbaren skjer ca. 100 ganger i løpet av hele prosessen, fordi det tar tid og ressurser, og forskjell på 1/10 pixel ikke er synlig. Hvis du ikke kan avbryte, eller hvis du ikke vet når algoritmen kommer til å bli ferdig, kan du lage en form med TAnimate og vise den med vanlig Show før du starter med prosessen. Dette fungerer veldig bra selv om jeg foretrekker å vise ekte framskritt, altså hvor mye som står igjen. Lenke til kommentar
gromar Skrevet 22. september 2005 Forfatter Del Skrevet 22. september 2005 Jo er helt enig at det hadde vært best å bryte den opp slik at jeg kan kalle prosessMessage. Men det er selfølgelig ikke tilfelle når man virkelig har bruk for det eller hva Prosedyren ligger i en dcu fil, som jeg ikke har tilgang til. Jeg prøvde det du sa med å lage en ny form med en TAnimate. Men den frøs hos meg! (altså den blei ikke oppdatert så lenge hovedtråden var opptat) Lenke til kommentar
sinnaelgen Skrevet 22. september 2005 Del Skrevet 22. september 2005 Er det en ferdig rutine du bruker som bruker så lang til at du lurer på om maskin har hengt seg opp slik at du ikke selv jan legge inn noe som sender beskjed utenfor rutine ? Du kan ikke lage din egen variant av denne da ? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå