Springen naar inhoud


- - - - -
VB6

Concentrisch Vierkanten Naar Buiten



  • Log in a.u.b. om te beantwoorden
Er zijn 11 reacties in dit onderwerp

#1 houthalen

houthalen

    Senior Developer

  • Leden
  • PipPipPip
  • 181 berichten
    Laatst bezocht 02 apr 2024 15:55

Geplaatst op 02 mei 2016 - 16:39

dag
met deze code krijg ik concentrisch  vierkanten van binnen (toeslag 0)   naar buiten  van de picture.
En dat werkt goed.

Ik heb geprobeede om het tegendeel  te krijgen, namelijk concentrisch vierkanten vanuit de randen van de picture  naar het centrum toe,
maar wil het mij niet lukken. (ik heb, onder ander,   bv. de '+' in '-' verandert )
ik wil dus dat de concentrisch vierkanten  van buiten naar binnen gaan, in plaats dan van binnen naar buiten (zoals nu)

Welke-waar  verhouding/toeslag in mijn code  moet ik aanpassen?
dank u

Code:
Dim Toeslag As Integer
Dim Verhouding As Single
Dim X As Integer
Dim Y As Integer

Private Sub Form_Load()
Picture1.ScaleMode = 3
Verhouding = Picture1.ScaleHeight / Picture1.ScaleWidth
X = Picture1.ScaleWidth / 2
Y = Picture1.ScaleHeight / 2
Toeslag = 0
Timer1.Interval = 50
End Sub

Private Sub Timer1_Timer()
Toeslag = Toeslag + 10
Picture1.Line (X - (Toeslag), Y - (Toeslag * Verhouding))-(X + (Toeslag), Y + (Toeslag * Verhouding)), vbRed, B
If X - Toeslag < 0 Then
Picture1.Cls
X = Picture1.ScaleWidth / 2
Y = Picture1.ScaleHeight / 2
Toeslag = 0
End If
End Sub


#2 Damic

Damic

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 891 berichten
    Laatst bezocht 08 okt 2024 20:52
  • LocatieMechelen (BE)

Geplaatst op 04 mei 2016 - 19:11

Je moet je toeslag aanpassen ;) dus beginnen met toeslag max en zo naar 0 gaan.
dus in form_load zet je toeslag = x

en in timer1 zet je:
toeslag=toeslag-10

en daar zet je ook in die if: toeslag =x

Dat zou je verder i nde jusite richting moeten sturen.

#3 houthalen

houthalen

    Senior Developer

  • Leden
  • PipPipPip
  • 181 berichten
    Laatst bezocht 02 apr 2024 15:55

Geplaatst op 04 mei 2016 - 23:47

dag damic en bedankt voor uw reactie.
Ik heb dus de code zo aangepast :

Code:
Dim Toeslag As Integer
Dim Verhouding As Single
Dim X As Integer
Dim Y As Integer

Private Sub Form_Load()
Picture1.ScaleMode = 3
Verhouding = Picture1.ScaleHeight / Picture1.ScaleWidth
X = Picture1.ScaleWidth / 2
Y = Picture1.ScaleHeight / 2
Toeslag = X
Timer1.Interval = 50
End Sub

Private Sub Timer1_Timer()
Toeslag = Toeslag - 10
Picture1.Line (X - (Toeslag), Y - (Toeslag * Verhouding))-(X + (Toeslag), Y + (Toeslag * Verhouding)), vbRed, B
If Toeslag = X Then
Picture1.Cls
X = Picture1.ScaleWidth / 2
Y = Picture1.ScaleHeight / 2
Toeslag = 0
End If
End Sub

maar werkt  (nog) niet goed.
Het begin goed, dus het gaat tijdelijk naar binnen maar dan herbegint  naar buiten te gaan en dan stopt volledig.
Dank u

#4 Damic

Damic

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 891 berichten
    Laatst bezocht 08 okt 2024 20:52
  • LocatieMechelen (BE)

Geplaatst op 04 mei 2016 - 23:55

Ik heb het niet goed gezegd:
Visual Basic Code:
Private Sub Timer1_Timer()
Toeslag = Toeslag - 10
Picture1.Line (X - (Toeslag), Y - (Toeslag * Verhouding))-(X + (Toeslag), Y + (Toeslag * Verhouding)), vbRed, B
If X - Toeslag < 0 Then
Picture1.Cls
Toeslag = x
End If
End Sub


#5 houthalen

houthalen

    Senior Developer

  • Leden
  • PipPipPip
  • 181 berichten
    Laatst bezocht 02 apr 2024 15:55

Geplaatst op 05 mei 2016 - 00:05

OoK zo

Code:
Dim Toeslag As Integer
Dim Verhouding As Single
Dim X As Integer
Dim Y As Integer

Private Sub Form_Load()
Picture1.ScaleMode = 3
Verhouding = Picture1.ScaleHeight / Picture1.ScaleWidth
X = Picture1.ScaleWidth / 2
Y = Picture1.ScaleHeight / 2
Toeslag = X
Timer1.Interval = 50
End Sub

Private Sub Timer1_Timer()
Toeslag = Toeslag - 10
Picture1.Line (X - (Toeslag), Y - (Toeslag * Verhouding))-(X + (Toeslag), Y + (Toeslag * Verhouding)), vbRed, B
If X - Toeslag < 0 Then
Picture1.Cls
Toeslag = X
End If
End Sub

nog niet goed.
Het ontbreekt iets in de timer, denk ik.

#6 Damic

Damic

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 891 berichten
    Laatst bezocht 08 okt 2024 20:52
  • LocatieMechelen (BE)

Geplaatst op 05 mei 2016 - 07:32

Zul je toch zelf moeten zoeken, zal wrs iets heel simpel zijn.

#7 houthalen

houthalen

    Senior Developer

  • Leden
  • PipPipPip
  • 181 berichten
    Laatst bezocht 02 apr 2024 15:55

Geplaatst op 05 mei 2016 - 08:31

Ufff;
Opgelost !
Code:
Private Sub Timer1_Timer()
Toeslag = Toeslag - 10
Picture1.Line (X - (Toeslag), Y - (Toeslag * Verhouding))-(X + (Toeslag), Y + (Toeslag * Verhouding)), vbRed, B
If Toeslag < 0 Then
Picture1.Cls
Toeslag = X
End If
End Sub

nogmals dank, Damic

#8 Damic

Damic

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 891 berichten
    Laatst bezocht 08 okt 2024 20:52
  • LocatieMechelen (BE)

Geplaatst op 05 mei 2016 - 10:19

Je hebt trouwens nog een hele hoop  () staan die niet echt van toepassing zijn :)

Picture1.Line (X - Toeslag, Y - Toeslag * Verhouding)-(X + Toeslag, Y + Toeslag * Verhouding), vbRed, B  

Zou normaal hetzelfde moeten geven

#9 houthalen

houthalen

    Senior Developer

  • Leden
  • PipPipPip
  • 181 berichten
    Laatst bezocht 02 apr 2024 15:55

Geplaatst op 05 mei 2016 - 10:45

Inderdaad, Damic., volkomen gelijk.
het werkt ook zoals u zegt.

Ik mag nu...kiezen !

dank u
houthalen

#10 Damic

Damic

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 891 berichten
    Laatst bezocht 08 okt 2024 20:52
  • LocatieMechelen (BE)

Geplaatst op 05 mei 2016 - 14:27

Trouwens is er een reden dat je nog altijd in vb6 bezig bent?

#11 houthalen

houthalen

    Senior Developer

  • Leden
  • PipPipPip
  • 181 berichten
    Laatst bezocht 02 apr 2024 15:55

Geplaatst op 05 mei 2016 - 15:40

Beste Damic,

ik  ben vooral bezig met oude programma's (in vb6) aan te passen.
Ik heb in het verleden vele programma's gemaakt in vb6 (ook voor andere mensen) en ik kan zeker niet alle programma's herschrijven in vb net.
Daarom ben in (nog) bezig met vb6

Intussen heb ik wel vb 2010 op een computer staan en af en toe probeeer ook iets nieuws in vb net.

Het kan dus wel dat ik dan nog eens, hier,  hulp zal vragen voor iets   in vb6

dag

#12 Damic

Damic

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 891 berichten
    Laatst bezocht 08 okt 2024 20:52
  • LocatieMechelen (BE)

Geplaatst op 07 mei 2016 - 23:38

Ha ok, de meeste van mijn programma's in vb6 zijn redelijk gemakkelijk om te zetten naar .net, maar vermits ik het merendeel toch niet meer wil onderhouden (klein of onbenullig) is het omzet aantal heel klein :+





Ook met taq VB6 voorzien

0 gebruiker(s) lezen dit onderwerp

0 lid(leden), 0 bezoeker(s), 0 anonieme gebruikers

Inloggen


[VB6] Untitled 1

Met dank aan Jürgen voor de jarenlange inzet van visualbasic.be (anno dec 2000)
Met dank aan Mike en Ronneke voor de jarenlange inzet van vbib.be (anno dec 2010)
Met dank aan PascalBianca voor de jarenlange inzet van vbib.be (anno dec 2016)