Programmeringsgrafik med Visual Basic kan vara lite långsam , beroende på vilka metoder du väljer att arbeta med . Det finns flera olika sätt att uppnå samma sak i VB , men vissa är snabbare än andra . Hastigheten är mycket viktigt vid programmering med tung grafik , t.ex. när du programmerar ett spel . Varje bild består av flera pixlar , och varje pixel har en xy koordinat på datorskärmen . Datorspel innebär rörliga bilder på skärmen , vilket flyttar varje pixel till en ny xy koordinat . Instruktioner
1
Definiera "bra" variabler som är optimerade för bästa prestanda i din kod . Undvik variant och decimala datatyper för dina variabler . Varianter är den värsta typen av variabel i alla VB -program eftersom de tar upp mycket minne . En variabel kommer att definieras som en variant om ingen datatyp är definierad. Till exempel, " Dim myVariable " kommer att vara en variant medan " Dim min Variabel som Long " kommer att vara en lång datatyp. Långa datatyper är det snabbaste och mest effektiva datatyp att använda när du arbetar med grafik .
2
Använd " GetBitmapBits /SetBitmapBits " och " GetDIBits /StretchDIBits " rutiner för " Gdi32 " API . Alla dessa rutiner direkt hänvisar till dynamiskt allokerade minnet på maskinen , vilket gör dem supersnabb , men försiktig när du använder dem . Deklarera en bitmapp typ som behövs för " GetObject " rutin. De viktigaste variablerna i bitmap typ är bitmap bredd i pixlar , bitmapp höjd i pixlar , bitmapp bredd i byte och antal bitar per pixel i bilden . Funktionen " RGB ( imageData 2 ( X, Y ) , imageData 1 ( X, Y ) , imageData 0 ( , X, Y) ) " får färgen i bilden lokaliseras på xy samordna anges.
3
Få placeringen av musen när användaren klickar eller dubbel klick med " GetCursorPos " rutinen av " User32 " API . Också definiera en ny " PointAPI " Type att hämta xy koordinat musklick . Nu när du har xy koordinat för den nyligen klickade musens position , kan du flytta det grafiska objektet till den platsen . Om att flytta en bild objektet , " picture1.location = ny punkt ( x , y ) " kommer att flytta bilden till den nya platsen . För bättre prestanda samtal " GetObject , " sedan " SetBitmapBits . " Addera