Letar efter på något sätt stänga av animationen som normalt finns på en progressbar i Vista. Anledningen är att det tar några sekunder innan värdet är nåt. Men hur jag stänger av det har jag inte lyckats göra. Efter många timmar googlande trodde jag att jag hittade något, men utan resultat. Skälet till att det tar en liten stund är ju att det inte går att räkna ut hur lång tid något tar utan att ha börjat överföra/kopiera/whatever. Man måste ju vänta en stund och se vilken hastighet man kommer upp i om det handlar om t ex filkopiering eller tankning. Det känns spontant som att det är rätt meningslöst att stänga av den funktionen...eller har jag missförstått dig? Du har missförstått mig. :) Säg att jag har en progressbar. Minimum är 0, maximum är 100 och värdet är 0. Sätter jag värdet till 100 tar det någon sekund för det gröna fältet att nå 100. Det jag vill är att den ska gå direkt till 100, inte glida från 0 och hela vägen till 100 som den gör nu. Aha, sorry, jag tyckte det lät dumt :-) Tyvärr har jag inget svar på det och hittar inget vettigt när jag googlade heller. Inget klockrent ord att googla på... Vad händer om du sätter dess stil till ProgressBarStyle.Blocks och sedan kör progressBar1.Step = 100 följt av progressBar1.PerformStep()? Gör du detta projekt i C#.NET? Ja, projektet är i C#.NET. Vad menar du med om jag äger progressbaren? Är den i ditt projekt eller är den i en annan applikation? Det är i mitt projekt jag vill ta bort animationen från progressbaren. Hmm, när är det du tar bort animationen? Några millisekunder var nog fel val av ord där :P Men det tar mindre än en sekund i alla fall. Inte vad jag hade tänkt mig men det fungerar :-P.Stäng av animationen på en progressbar i Vista?
const int GWL_STYLE = -16;
const int PBS_SMOOTH = 0x01;
int WindowStyle = GetWindowLong(progressBar1.Handle, GWL_STYLE);
SetWindowLong(progressBar1.Handle, GWL_STYLE, (WindowStyle & ~PBS_SMOOTH));
Om jag tolkar koden rätt så hämtas först stilen för progressbaren. Och därefter sätts den nya stilen och PBS_SMOOTH är, borttaget? Eller? Hur som helst så fungerade det inte. =(
Sv: Stäng av animationen på en progressbar i Vista?
Sv:Stäng av animationen på en progressbar i Vista?
Sv: Stäng av animationen på en progressbar i Vista?
Sv: Stäng av animationen på en progressbar i Vista?
Sv: Stäng av animationen på en progressbar i Vista?
Äger du progressbaren?Sv:Stäng av animationen på en progressbar i Vista?
Sv: Stäng av animationen på en progressbar i Vista?
Kan du visa kodsnutt där du använder din progressbar?Sv:Stäng av animationen på en progressbar i Vista?
Enklast är att ha en knapp, där följande händer när man trycker.
progressBar1.Value = 100;
Det tar några millisekunder för att hela baren ska bli grön. Det är den fördröjningen jag vill ta bort.
Sv: Stäng av animationen på en progressbar i Vista?
"Det tar några millisekunder " det borde du väl inte hinna se med ögat? :P
Körs någon annan kod innan du sätter value till 100 som kan fördröja programmet eller?Sv:Stäng av animationen på en progressbar i Vista?
Exempel: http://no0vad.netau.net/example.avi
Programmet fördröjs inte, utan man kan väll säga att det tillhör Vista progressbaren. Ska man gå från värde A till värde B ska det animeras i mellan dem, inte hoppa direkt som jag vill.Sv: Stäng av animationen på en progressbar i Vista?
progressBar1.Maximum = 1000;
progressBar1.Value = 1000;
progressBar1.Value = 999;
progressBar1.Value = 1000;
:-)
Sv:Stäng av animationen på en progressbar i Vista?
Tack för hjälpen!