Ниже приведен мой код программы:
- Код: Выделить всё
Public stoper As Boolean
Public x As Long
Sub InitGraph()
stoper = False
frmMain.Show
Set lrbg = LoadPicture(App.Path + "\sbg.jpg")
End Sub
Sub Sync()
Set lrMain = LoadPicture(App.Path + "\main.jpg")
' Приходится каждый раз грузить изображение
' в память!!! Это сильно тормозит прогу
hMain = CreateCompatibleDC(frmMain.hdc)
hbg = CreateCompatibleDC(frmMain.hdc)
SelectObject hMain, lrMain.Handle
SelectObject hbg, lrbg.Handle
x = x + 20
If x = 200 Then x = 0
BitBlt hMain, x, 50, 200, 200, hbg, 0, 0, SRCCOPY
SelectObject hMain, lrMain
frmMain.Picture = lrMain
DeleteDC hbg
DeleteDC hMain
End Sub
Sub Main()
Call InitGraph
x = 0
Do Until stoper = True
tmr = GetTickCount
Sync
DoEvents
tmr = GetTickCount - tmr
frmMain.lblFPS.Caption = "FPS: " & Str(1/tmr)
' Здесь я применил Апи GetTickCount для вычисления времени кадра и
'потом секунду разделил на время кадра, но у меня показывает 1-2 ФПС?!
' 8) непонимаю что не так(((
Loop
'MsgBox "End!"
End
End Sub
Буду благодарен если кто поможет)))