Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: VB6: Nopeustestaaja

CyantLeap [17.11.2005 21:12:14]

#

Tämä tietsikan nopeuden testaaja luo eri värisiä ja kokoisia palloja näytölle niin nopeesti kun sun kone ne pystyy luomaa. Myös ohjelma laskee 100 000 pallon luomiseen käytetyn ajan. Testin nopeus riippuu vähän kaikesta. Mitä suurempi käyttö koneellasi on testin aikana, sitä hitaammin pallot ilmestyy näytölle. Mulla meni testiin 20 sekuntia.

Taustalle voi asettaa myös kuvan! :)

'luodaan pysyvät muuttujat
Dim Circles
Dim Sek, S As Integer

Private Sub Form_Click()
Nopeustesti
End Sub

Private Sub Form_Load()
Circles = 0
Sek = 0
Form1.Caption = "Tietokoneen nopeustesti"
Form1.BorderStyle = 1
Form1.WindowState = 2
ForeColor = vbBlack
End Sub

Sub Ajastin()
If S <> Second(Time) Then
S = Second(Time)
Sek = Sek + 1
End If
End Sub

Sub Nopeustesti()
'luodaan muuttujat..
Dim Aika, Varit, Muoto, X, Y As Integer

Do

'päivitetään ajastin
Ajastin

Circles = Circles + 1

'jos 100000 ympyrää, niin lopetus
If Circles = 100000 Then
Aika = Sek
Sek = 0
MsgBox "Tietokone käytti aikaa noin " & Aika & " sekuntia, jossa se piirsi " & Circles & " ympyrää."
Circles = 0
Exit Sub
End If

'piirtoasetukset
ScaleMode = 3
FillStyle = 0

'Randomize
'lasketaan x ja y pisteet
X = Int(800 * Rnd)
Y = Int(550 * Rnd)
Randomize

'arvotaan väri
'colors = Int(7 * Rnd)

If ForeColor = vbWhite Then
ForeColor = vbBlack
ElseIf ForeColor = vbBlack Then
ForeColor = vbRed
ElseIf ForeColor = vbRed Then
ForeColor = vbYellow
ElseIf ForeColor = vbYellow Then
ForeColor = vbGreen
ElseIf ForeColor = vbGreen Then
ForeColor = vbBlue
ElseIf ForeColor = vbBlue Then
ForeColor = vbCyan
ElseIf ForeColor = vbCyan Then
ForeColor = vbMagenta
ElseIf ForeColor = vbMagenta Then
ForeColor = vbWhite
End If

Siirry:

'valitaan ympyrän täyttöväri
FillColor = ForeColor

Muoto = Int(5 * Rnd)

If Muoto = 5 Then
Circle (X, ScaleHeight - Y), 5
ElseIf Muoto = 4 Then
Circle (X, ScaleHeight - Y), 4
ElseIf Muoto = 3 Then
Circle (X, ScaleHeight - Y), 3
ElseIf Muoto = 2 Then
Circle (X, ScaleHeight - Y), 2
ElseIf Muoto = 1 Then
Circle (X, ScaleHeight - Y), 1
ElseIf Muoto = 0 Then
Circle (X, ScaleHeight - Y), 0
End If


Loop
End Sub

Vastaus

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

Tietoa sivustosta