Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> Visual Basics Programmering >> Content

    Hur man använder DirectX i VB

    DirectX är ett av de ledande grafikprogrammering programmeringsgränssnitt som används för spel, simuleringar och andra grafiska tillämpningar såsom medicinsk avbildning . Det är en Windows- bibliotek tillgängliga för användning i C + + , liksom alla . NET framework språk som C # eller VB.net . Det enda steg som krävs för att börja utnyttja den fulla kraften av en av de ledande grafik API: er i världen är att lägga till ett bibliotek referens till din . NET-projektet . Instruktioner
    1

    Högerklicka på projektets namn i navigeringsfönstret , och klicka på " Add Reference ". Lägg projektreferenser till Microsoft.DirectX.dll och Microsoft.DirectX.DirectDraw.dll
    2

    Kopiera och klistra in följande i toppen av din Main.vb fil : .

    Import Microsoft.DirectXImports Microsoft.DirectX.DirectDraw Addera 3

    på toppen av din Controller objekt , klistra in följande variabeldeklarationer :

    Privat visning Som DevicePrivate front Som Surface = NothingPrivate tillbaka som Surface = NothingPrivate titel Som Surface = NothingPrivate text Som Surface = NothingPrivate klippet Som Clipper = NothingPrivate titlescreen As String = Application.StartupPath + " \\ title.bmp "
    4

    Klistra in följande kod på din klass nedan konstruktorn :

    Private Sub InitDirectDraw ( ) "för att beskriva en yta

    Dim Beskrivning som ny SurfaceDescription ( ) " Init Device

    display = Ny enhet ( ) # Om DEBUG Thendisplay.SetCooperativeLevel ( Me , CooperativeLevelFlags.Normal ) # Else ' Ställ kooperativa Nivå och förälder ,

    " setted till helskärm Exklusivt för formuläret ) katalog

    display.SetCooperativeLevel ( Me , CooperativeLevelFlags.FullscreenExclusive ) " Ställ in upplösning och färgdjup

    " används i helskärmsläge ( 640x480 , 16 bitars färg ) katalog

    display.SetDisplayMode 640 ( , 480 , 16 , 0 , False ) # End If

    'Ange attribut för den främre ytan

    description.SurfaceCaps.PrimarySurface = Sant

    # Om DEBUG Thenfront = ny yta ( beskrivning , display ) # Elsedescription.SurfaceCaps.Flip = Truedescription.SurfaceCaps.Complex = Sant

    " Ställ Back Buffer räkna

    description.BackBufferCount = 1

    " Skapa ytan med specifed beskrivning och enhet ) katalog

    front = ny yta ( beskrivning , display ) # End Ifdescription.Clear ( ) # Om DEBUG Thendescription.Width = front.SurfaceDescription.Widthdescription.Height = front.SurfaceDescription.Heightdescription.SurfaceCaps.OffScreenPlain = Trueback = ny yta ( beskrivning , visa ) # Else " en Caps är en uppsättning attribut som används av de flesta av DirectX komponenter

    Dim caps som Nya SurfaceCaps ( ) " Ja, vi använder en bakre buffer

    caps.BackBuffer = Sant

    " Associera främre bufferten att backa buffert med specificerade lock

    back = front.GetAttachedSurface ( caps ) # End Om

    " Skapa Clipper

    clip = Ny Clipper ( display ) '' ' Ställ regionen att denna form

    clip.Window = Me ' Ange Clipper till den främre ytan

    front . Clipper = clip

    " Återställ beskrivningen

    description.Clear ( ) ' Skapa titelskärmen titel

    = ny yta ( titlescreen , beskrivning , display ) katalog

    description.Clear ( ) 'Ange höjden och bredden på texten .

    description.Width = 600description.Height = 16 ' OffScreenPlain innebär att denna yta

    " är inte en front , tillbaka , alfa Surface .

    description.SurfaceCaps.OffScreenPlain = Sant

    "Skapa texten Surface text

    = ny yta ( beskrivning , display ) " Ställ backgroup färg

    text.ColorFill ( Color.Black ) Ställ i förgrunden färg på texten

    text.ForeColor = Color.white ' Rita text till ytan för att coords ( 0,0 )

    text.DrawText ( 0 , 0 , " Managned DirectX Tutorial 1 - Tryck på Enter eller Escape för att avsluta " , sant) End SubPrivate Sub Draw ( ) " Om den främre inte skapa, ignorera denna funktion

    Om fronten är ingenting ThenReturnEnd Om

    " Om blanketten minimeras , ignorera detta

    funktion
    Om Me.WindowState = FormWindowState.Minimized ThenReturnEnd IfTry ' Rita titeln på baksidan buffert med källa Kopiera BLIT

    back.DrawFast ( 0 , 0 , titel , DrawFastFlags.Wait ) katalog

    'rita texten även på baksidan buffert med källan kopia BLIT

    back.DrawFast ( 10 , 10 , text , DrawFastFlags.Wait ) katalog

    # Om DEBUG Then ' Oavgjort allt detta till den främre

    front.Draw ( back , DrawFlags.Wait ) # Else ' gör en flip att överföra tillbaka buffert till fronten , snabbare

    # End Iffront.Flip ( back , FlipFlags.Wait ) katalog

    Catch generatedExceptionName som WasStillDrawingExceptionReturnCatch generatedExceptionName som SurfaceLostException " Om vi förlorat ytorna , återställa ytorna

    RestoreSurfaces ( ) End sub ​​TryEnd

    Private Sub RestoreSurfaces () "för att beskriva en yta

    Dim Beskrivning som ny SurfaceDescription ( ) katalog

    " Restore al ytan associed med

    enhetens
    display.RestoreAllSurfaces () ' Redraw texten text.ColorFill

    ( Color.Black ) text.DrawText ( 0 , 0 , " Managned DirectX Tutorial 1 - Tryck Enter eller Escape för att avsluta " , Sant ) katalog

    " för titelskärmen , vi behöver

    ' avyttra den först och sedan återskapa det

    title.Dispose ( ) title = Nothingtitle = ny yta ( titlescreen , beskrivning , display ) ReturnEnd Sub
    5

    Kopiera och klistra in följande kod på din klasskonstruktorn :

    InitializeComponent ( ) InitDirectDraw ( ) Me.Cursor.Dispose ( ) Me.Show ( ) Medan CreatedDraw ( ) Application.DoEvents ( ) End Medan
    6

    Tryck " F5 " för att köra programmet och se title.bmp som visas på skärmen .

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur du välja från en datamängd i Visual Basic
    ·Hur man skapar ett bildblock i Visual Basic
    ·Hur testar jag staten en kryssruta i Visual Basic
    ·Hur man sätter in en linje i en fil i VBS
    ·Hur man skapar en GPA Calculator i Visual Basic 2008
    ·Hur man skapar ett gränssnitt Web Logga in med Visual …
    ·Lägga till en DataRelation
    ·Hur man använder kalendern i VBA
    ·Hur man gör en miniräknare med Visual Basic
    ·Hur synkronisera två Scroll Lådor i Visual Basic
    Utvalda artiklarna
    ·Hur få systemet Date From Python
    ·Hur du använder SQL Med Java
    ·Hur man använder Turbo C
    ·Konfigurera Java JDK
    ·Hur är kedjor Initierat i Visual Basic
    ·Hur får man Java arbetar rätt på XP
    ·Hur man använder Dir $ i VB6
    ·Vad är numerisk variabel Tecken
    ·Avancerad Java Ämnen
    ·Hur man testar FFmpeg i PHP
    Copyright © Dator Kunskap http://www.dator.xyz