Tämä kysymys on hieman typerä, mutta kuitenkin.
Olen säätämässä verolevyjen suunnitteluohjelmaa ja ohjelmani piirtää picture1:n verolevyn reiät tähän tapaan:
For X = 0 To Picture1.ScaleWidth Step 10 For Y = 0 To Picture1.ScaleHeight Step 10 Picture1.Circle (X, Y), 2, vbBlack Next Next
Ja kun laudalle aletaan rätviä hiirulaisen avulla komponenttejä niin niiden päiden pitäisi sattua lähimmän tuollaisen "reijän" keskipisteeseen, itse en keksinyt mitään järkevää tapaa ratkaista tätä.
Eli siis tarkoitus olisi että komponentti liikkuisi hiirellä vedettäessä aina 10 pikseliä kerrallaan? Jos käsitin oikein, niin tällaisesta esimerkistä voisi olla apua:
Private Sub Form_Load() Form1.ScaleMode = 3 End Sub Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Circle (Int(X / 10) * 10, Int(Y / 10) * 10), 10, 0 End Sub
Edit: Tuossa Int(x / 10) * 10 -juttussa on ideana siis se että ensin jaetaan kymmenellä, ja sitten poistetaan desimaalit ja kerrotaan taas kymmenellä.
Tällöin esim.
5 on 5/10 = 0.5 (int) = 0 --> 0*10 = 0
24 on 24/10 = 2.4 (int) = 2 --> 2*10 = 20
Kiitos hunajavohveli, toimii täysin niinkuin oli tarkoituskin. =)
Aihe on jo aika vanha, joten et voi enää vastata siihen.