Hejsan! Lägg till Refresh efter text1.text = "Data laddas hem" Hej Snarare: Refresh fungerade utmärkt... jag hade förenklat exemplet lite =) Hej Do events utför de meddelande som ligger i fönstrets meddelande kö... Det kan var mus klick tangen tryckninga musrörelse, system meddelande, WM_Paint och en massa annat... Ni har skickligt nog börjat nosa lite på mitt nästa dilemma =)Få saker att skrivas ut på skärmen NÄR de händer
Jag har ett databaskoppling som hämtar VÄLDIGT mycket data. Jag vill få användaren att orka vänta genom att skriva ut att "data laddas hem", med det skrivs inte ut förren allt e klart. gå här ser det ut.
sub form1_load
text1.text = "Data laddas hem"
'Alla data laddas hem'
text1.text = "Data hemladdat"
end sub
Går det inte att fixa så det skrivs ut allt eftersom? typ text1.flush eller nåt!
Tack*1000Sv: Få saker att skrivas ut på skärmen NÄR de händer
/JohanSv: Få saker att skrivas ut på skärmen NÄR de händer
Förutom JohanD :s förslag skulle jag testa att lägga in ett DoEvent
text1.text = "Data laddas hem"
'Alla data laddas hem'
Data1.Refresh
DoEvents
text1.text = "Data hemladdat"
mvh
SvenSv: Få saker att skrivas ut på skärmen NÄR de händer
text1.text = "Data laddas hem"
text1.Refresh
'Eventuellt DoEvents här
'Alla data laddas hem'
text1.text = "Data hemladdat"
Så att du körde detta i Form_Load, det kommer alltså att köras innan formuläret har ritats upp på skärmen och således kommer inte texten synas ändå...
/JohanSv: Få saker att skrivas ut på skärmen NÄR de händer
men vad är DoEvents?Sv: Få saker att skrivas ut på skärmen NÄR de händer
Man skulle kunna tänka sig en lösning med en Timer
som med jämna mellanrum känner av hur långt
du kommit i dataladdning. Om du tex laddar i någon
form av loop så borde detta bli enkelt.
Vilka laddningstider pratar vi om > 10 sek ?
DoEvents var nog inte så smart tänkt du vill förmodligen
att laddningen skall ske ostört , och sedan "Laddning Klar"
DoEvents låter programmet komma in i tex en loop och
avbryta för att utföra ett annat kommando typ tangenttryckning.
Passar nog inte i ditt prob.
mvh
SvenSv: Få saker att skrivas ut på skärmen NÄR de händer
Bör vara försiktig att använda DoEvents eftesom den t.ex kommer göra det möjligt att trycka på en knapp Medans en loop utförs. Vilket kan ge oförutseeda situationer... Därför är det bättre att hålla sig till refresh, vilket jag har för mig hanter WM_PAINT...Sv: Få saker att skrivas ut på skärmen NÄR de händer
DoEvents är nog ingenting för mig... men det vore självklart bättre om jag kunde få det att stå:
Kontaktar databas
Skakar hand
Skickar fråga
Hämtar data
Stänger anslutning...
Men för att det skall lyckas måste man på något sätt kunna följa objectet ADODB.Connection resp. Recordset hela vägen... hur gör man det?