Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: VB6: Objekti putoaa+pomppaa

Meitsi [26.09.2004 14:04:19]

#

Tällä koodilla saa objektin putoamaan ja pomppaamaan toisesta objektista. Laita formille kolme buttonia (command1,command2,command3) ja timer(timer1). Esimerkissä command1 putoaa ja pomppaa command2:teen osuessaan.

Formille

'Propsit Kaviaari:lle kimmoisuus-efektistä :)
'Muuttuja dimmataan (ylläri!)
Dim nopeus As Long
Dim kimmoisuus As Long

Private Sub Command3_Click()

    'Pudotetaan uudestaan
    nopeus = 0
    Command1.Top = 100

End Sub

Private Sub Form_Load()

    'Kimmoisuus
    kimmoisuus = 30

    'Timerin viive
    Timer1.Interval = 10

    'Asetetaan formin tietoja

    Form1.AutoRedraw = True
    Form1.ScaleMode = 3

    'Nopeus on aluksi nolla
    nopeus = 0

    'Asetetaan nappien paikat ja tekstit

    Command1.Top = 100
    Command1.Left = 100
    Command2.Top = 400
    Command2.Left = 120
    Command1.Width = 30
    Command1.Height = 30
    Command2.Width = 40
    Command2.Height = 20
    Command1.Caption = "X"
    Command2.Caption = "Stoppi"
    Command3.Caption = "Uudelleen"

End Sub

Private Sub Timer1_Timer()
    'Osuuko nappi toiseen?
    If Command1.Top + Command1.Height = Command2.Top Then
        'Osuu, pomppu
        nopeus = nopeus - 1
        If nopeus > 0 Then
            nopeus = -nopeus + nopeus / kimmoisuus
            Command1.Top = Command1.Top + nopeus
        End If
    Else
    'Ei osu, pudotetaan ja kasvatetaan nopeutta. Katsotaan, ettei putoa toisen napin "läpi"
    nopeus = nopeus + 1
        If Command2.Left <= (Command1.Left + Command1.Width) And Command2.Left >= Command1.Left Then
            If Command1.Top + Command1.Height < Command2.Top Then
                If (Command1.Top + Command1.Height + nopeus) > Command2.Top Then
                    Command1.Top = (Command2.Top - Command1.Height)
                Else
                    Command1.Top = Command1.Top + nopeus
                End If
            End If
        Else
            Command1.Top = Command1.Top + nopeus
        End If
    End If

End Sub

mankeli [26.09.2004 14:11:00]

#

eka!

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta