1 Κάντε δεξί κλικ στο όνομα του έργου στο πλαίσιο πλοήγησης και κάντε κλικ στο " Add Reference ". Προσθήκη αναφορές έργου Microsoft.DirectX.dll και Microsoft.DirectX.DirectDraw.dll 2
αντιγραφή και επικόλληση του παρακάτω στην κορυφή του αρχείου Main.vb σας : .
Εισαγωγές
Microsoft.DirectXImports Microsoft.DirectX.DirectDraw
εικόνων 3
στην κορυφή του αντικειμένου σας ελεγκτή , επικολλήστε τις παρακάτω δηλώσεις μεταβλητών :
Ιδιωτικά εμφανίζονται Όπως DevicePrivate μπροστά Όπως Surface = NothingPrivate Δεδομένου ότι ο τίτλος πίσω επιφάνειας = NothingPrivate Όπως Surface = NothingPrivate κειμένου Όπως Surface = NothingPrivate κλιπ Όπως Clipper = NothingPrivate titlescreen As String = Application.StartupPath + " \\ title.bmp "
Η 4
Επικολλήστε τον παρακάτω κώδικα στο σας κλάση κάτω από τον κατασκευαστή :
Private Sub InitDirectDraw () χρησιμοποιείται για να περιγράψει μια Surface
Dim περιγραφή As New SurfaceDescription ( ) ' init της συσκευής
display = νέα συσκευή ( ) # Εάν DEBUG Thendisplay.SetCooperativeLevel ( Me , CooperativeLevelFlags.Normal ) # Else " Ρυθμίστε το επίπεδο Συνεταιρισμός και η μητρική , πώληση
» καθίσαμε σε Full Screen Αποκλειστικά στο έντυπο )
display.SetCooperativeLevel ( Me , CooperativeLevelFlags.FullscreenExclusive ) « Ρυθμίστε την ανάλυση και το βάθος χρώματος
» που χρησιμοποιείται σε πλήρη οθόνη ( 640x480 , χρώμα 16 bit )
display.SetDisplayMode ( 640 , 480 , 16 , 0 , False ) # End If
« Ορίστε τις ιδιότητες για το μπροστινό Surface
description.SurfaceCaps.PrimarySurface = True
# Εάν DEBUG Thenfront = Νέα Surface ( περιγραφή , απεικόνιση) # Elsedescription.SurfaceCaps.Flip = Truedescription.SurfaceCaps.Complex = True
« Ορίστε το Back Buffer μετράνε
description.BackBufferCount = 1
» Δημιουργήστε το Surface με προσδιοριζόμενα περιγραφή και συσκευής )
μπροστά = Νέα Surface ( περιγραφή , απεικόνιση ) # End Ifdescription.Clear ( ) # Εάν DEBUG Thendescription.Width = front.SurfaceDescription.Widthdescription.Height = front.SurfaceDescription.Heightdescription.SurfaceCaps.OffScreenPlain = Trueback = Νέα Επιφάνεια ( περιγραφή , απεικόνιση) # Else «Α Caps είναι ένα σύνολο χαρακτηριστικών που χρησιμοποιείται από τους περισσότερους από DirectX συστατικά
Dim καλύμματα As New SurfaceCaps ( ) « Ναι , είμαστε χρησιμοποιώντας ένα ρυθμιστικό πίσω
caps.BackBuffer = True
« Συσχετίζει το μπροστινό ρυθμιστικό προς τα πίσω buffer με συγκεκριμένα καλύμματα
πίσω = front.GetAttachedSurface ( καπάκια ) # End If
« Δημιουργία του Clipper
clip = Νέα Clipper ( οθόνη ) '' ' Ορίστε την περιοχή σε αυτή τη μορφή
clip.Window = Me " Ρυθμίστε την κουρευτική μηχανή για την μπροστινή Surface
μπροστά . Clipper = κλιπ
'Reset την περιγραφή
description.Clear ( ) ' Δημιουργία την οθόνη τίτλου
title = Νέα Surface ( titlescreen , περιγραφή , απεικόνιση)
description.Clear () Ρυθμίστε το ύψος και το πλάτος του κειμένου .
description.Width = 600description.Height = 16 ' OffScreenPlain σημαίνει ότι αυτό το Surface
»δεν είναι ένα μέτωπο , πίσω , άλφα επιφάνειας .
description.SurfaceCaps.OffScreenPlain = True
» Δημιουργήστε το κείμενο της επιφάνειας
text = Νέα Surface ( περιγραφή , απεικόνιση) « Ορίστε το χρώμα backgroup
text.ColorFill ( Color.Black ) « Ρύθμιση του χρώματος προσκήνιο του κειμένου
text.ForeColor = Color.White « ζωγραφίσουν το κείμενο στην επιφάνεια στον coords ( 0,0 )
text.DrawText ( 0 , 0 , " Managned DirectX Tutorial 1 - Πατήστε Enter ή Escape για έξοδο " , True ) End Sub SubPrivate Draw ( ) « Αν ο μπροστινός δεν είναι να δημιουργήσουμε , να αγνοήσει αυτή τη λειτουργία
Αν δεν είναι τίποτα μπροστά ThenReturnEnd Αν
« Εάν η φόρμα έχει ελαχιστοποιηθεί , να αγνοήσει αυτή τη λειτουργία
Αν Me.WindowState = FormWindowState.Minimized ThenReturnEnd IfTry « ζωγραφίσουν τον τίτλο στο πίσω ρυθμιστικό χρησιμοποιώντας πηγή αντιγράψετε blit
back.DrawFast ( 0 , 0 , τίτλος , DrawFastFlags.Wait )
« Σχεδιάστε το κείμενο και στην πίσω ρυθμιστικό χρησιμοποιώντας πηγή αντίγραφο blit
back.DrawFast ( 10 , 10 , κείμενο , DrawFastFlags.Wait )
# Εάν DEBUG συνέχεια » Ισοπαλία όλα αυτά προς τα εμπρός
front.Draw ( πίσω , DrawFlags.Wait ) # Else » κάνει ένα flip να μετατεθεί ρυθμιστικό προς τα εμπρός , πιο γρήγορα
# End Iffront.Flip ( πίσω , FlipFlags.Wait )
Πιάσε generatedExceptionName Όπως WasStillDrawingExceptionReturnCatch generatedExceptionName Όπως SurfaceLostException «Αν χάσαμε τις επιφάνειες , να αποκαταστήσει τις επιφάνειες
RestoreSurfaces ( ) End Sub TryEnd
Private Sub RestoreSurfaces () χρησιμοποιείται για να περιγράψει μια Surface
Dim περιγραφή As New SurfaceDescription ( )
'Επαναφορά al η επιφάνεια associed με τη συσκευή
display.RestoreAllSurfaces ( ) « Διόρθωση του κειμένου
text.ColorFill ( Color.Black ) text.DrawText ( 0 , 0 , " Managned DirectX Tutorial 1 - Πατήστε το πλήκτρο Enter ή Escape για έξοδο " , True )
« Για την οθόνη του τίτλου , θα πρέπει να
» διαθέτει για πρώτη φορά και στη συνέχεια να δημιουργήσετε ξανά
title.Dispose ( ) title = Nothingtitle = Νέα Surface ( titlescreen , περιγραφή , απεικόνιση) ReturnEnd Sub
5
Αντιγράψτε και επικολλήστε τον παρακάτω κώδικα στο κατασκευαστή της κλάσης σας :
InitializeComponent ( ) InitDirectDraw ( ) Me.Cursor.Dispose ( ) Me.Show ( ) Ενώ CreatedDraw ( ) Application.DoEvents () End Ενώ
Η
6 Πατήστε το πλήκτρο " F5 " για να εκτελέσετε την εφαρμογή σας και να δείτε το title.bmp που εμφανίζεται στην η οθόνη .
Η
εικόνων
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα