Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: VB6: Kuminauha

InvalidCo [17.02.2005 12:17:30]

#

JES! Ensimmäinen koodivinkkini!

Olen ollut Putkan jäsenenä jo jonkin aikaa, etten ollut tehnyt koodivinkkejä... Ajattelin että jotain ehkä pitäisi lisätä joten, saanko esitellä; Kuminauha!

Ideana tässä koodissa on, että Shape2 pysyy Shape1:sen ja Shape3:sen välissä. Shape1:stä voi ohjata hiirellä ja Shape3:sta I:n, K:n, L:n, ja J:n voimalla. Shape2:nen haluaa yleensä mennä vähän lähemmäksi Shape1:stä kuin Shape3:sta, mutta sen saa pienellä koodinpätkällä korjattua.

Tarvitset formille 3 Shape-objektia ja Scalemode muuta kolmoseksi!

koodi

Private Sub Form_KeyPress(KeyAscii As Integer)
    Select Case KeyAscii 'Katsotaan mitä nappeja on painettu
        Case 27 'Esciä?
            Unload Me 'Jos on, niin lopetetaan ohjelma
        Case Asc("I"), Asc("i") 'Iitä?
            Shape3.Top = Shape3.Top - 10 'Jos on, niin liikutetaan sheippiä
        Case Asc("K"), Asc("k") 'Koota?
            Shape3.Top = Shape3.Top + 10 'Jos on, niin liikutetaan sheippiä
        Case Asc("J"), Asc("j") 'Jiitä?
            Shape3.Left = Shape3.Left - 10 'Jos on, niin liikutetaan sheippiä
        Case Asc("L"), Asc("l") 'Ällää?
            Shape3.Left = Shape3.Left + 10 'Jos on, niin liikutetaan sheippiä
    End Select
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    With Shape1 'With-käskyllä ei tarvitse kirjoittaa joka valueta ennen Shape1!
        .Left = X - .Width / 2
        .Top = Y - .Height / 2
    End With
    Shape2.Top = (Shape3.Top \ 2) + Shape2.Top \ 2 - (Shape2.Top - Shape1.Top) ' Laitetaan Shape2:sen Y-kordinaatit kuntoon
    Shape2.Left = (Shape3.Left \ 2) + Shape2.Left \ 2 - (Shape2.Left - Shape1.Left) ' Laitetaan Shape2:sen X-kordinaatit kuntoon
End Sub

Vastaus

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

Tietoa sivustosta