Do DoEvents If NappiPainettu(&H21) Then While Timer1() SendKeys (Text1.Text), True End If Loop
Eli miten saisin tuohon koodiin sellaisen jutun että kun painaa Page Down näppäintä (If NappiPainettu("H22) Then)
niin tuo While loppuisi?
Eli siis mikä pitäisi loppua? Tuossa on ainoastaan While-silmukan alku. Mihin sen pitäisi loppua?
Do DoEvents If NappiPainettu(&H21) Then While Timer1() SendKeys (Text1.Text), True Wend End If Loop
Siis tuossa se koodi. Ja tuo while siis pitäisi loppua heti kun on painettu Page Down.
Sori on vähän huonosti selitetty..
Ensinnäkin korvaa "While-Wend"-rakenne "Do While-Loop"-rakenteella. Silloin voit poistua silmukasta Exit-komennolla. Elikkäs:
Do While Timer1() If PageDownOnPainettu Then Exit Do Loop
Kiitoksia. ;) Nyt toimii.
Ähh, eipä toimikaan. Koitin sitä ja sain errorit pois, mutta nyt kun kokeilin niin se ei kuitenkaan toiminut.
Voisit(te)kohan sanoa koko tuon koodin?
While Timer1() -> While Not NappiPainettu("H22)
Olettaen, että nyt haluat "while wendin" loppumaan.
Gaxx, en saanut toimimaan. Koitin ensiksi kirjoittaa tuon "While Timer1() -> While Not NappiPainettu(&H22)" While Timer1() tilalle, mutta siitä tuli vain error.
Sitten koitin pelkkä While Not NappiPainettu(&H22) ja se toimi muuten paitsi, että tuo while ei pysähtynyt vaikka painoin oikeaa nappia enkä saanut lisättyä siihen timeriä.
Voisitkohan sanoa tuon koko koodin?
Do DoEvents If NappiPainettu(&H21) Then While Not NappiPainettu(&H22) SendKeys (Text1.Text), True Wend End If Loop
Tuollaisena sitä puheidesi perusteella kokeilit, mutta ei kai toiminu. Itelläni ainakin toimii.
Voi olla, että NappiPainettu funkkarissasi on vikaa. Tässä yksinkertainen funktio nappien tilojen tutkimiseen:
GetAsyncKeyStaten esittely:
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Ja itse funktio:
Private Function NappiPainettu(number As Long) If GetAsyncKeyState(number) Then NappiPainettu = True Else NappiPainettu = False End If End Function
NappiPainettu jutussa ei kyllä ollut vikaa, ainakin se muuten toimi hyvin paitsi sitten tuossa While Not jutussa.
Koitin sitten samaa koodia, mutta NappiPainettun vaihoin GetASyncKeyStateksi. Kyllähän se muuten toimi, muttei taaskaan sammunut siitä Page Down näppäimestä. Erroreita ei tullut yhtään.
Onko sitten muita keinoja jolla saisi tuon toimimaan? Esim. vaihtamalla Whilen Untiliin tai jotain..? Niin ja se timer pitäisi sinne vielä saada.
Ongelman täytyy olla SendKeys()-funktiossa. Sitä kun ei oikein sovi looppeihin — ainakaan omien kokemusteni perusteella. Kun testasin tuota koodia, käytin sen tilalla Print "moro":a. Kokeileppa sinäkin :)
Kappas vaan. :/ Outoa, että oon kuitenkin ennen saanut SendKeysin loopilla toimimaan.. tai sitte oon nähny unta?
Aihe on jo aika vanha, joten et voi enää vastata siihen.