DirectX7对象
DirectX7对象是DirectX VB对象中其他所有对象的服务和起始对象,这个对象包含了建立诸如DirectDraw、 Direct3D、 DirectSound、 DirectInput等对象的方法。同时该对象还包含了一系列的三维控件顶点和距阵的操作函数以及一些DirectX系统函数。在VB中可以通过Dim...New来直接定义和初始化一个DirectX7对象,例如:
Dim DirectX As New DirectX7
当建立成功一个DirectX7对象之后,就可以使用该对象的DirectDrawCreate、Direct3DRMCreate等方法建立DirectDraw、Direct3D对象了。
DirectX7对象范例1:获得系统中的DirectDraw和DirectSound驱动
建立一个新的工程文件,点击菜单中的 Project | References 项,在Object Library 列表中选中DirectX 7.0 For Visual Basic Type Library 项后按确定按钮(以下的程序都需要这个步骤,后面将不再做说明)。然后在Form1中加入一个ListBox控件和四个CommandButton控件,在Form1的代码窗口中加入以下代码:
Option Explicit
Dim DirectX As New DirectX7
Dim DDEnum As DirectDrawEnum
Dim DDSound As DirectSoundEnum
Private Sub Command1_Click()
Dim Count, i As Integer
Set DDEnum = DirectX.GetDDEnum
Count = DDEnum.GetCount
List1.Clear
For i = 1 To Count
List1.AddItem DDEnum.GetDescription(i)
Next i
Set DDEnum = Nothing
End Sub
Private Sub Command2_Click()
Dim Count, i As Integer
Set DDEnum = DirectX.GetDDEnum
Count = DDEnum.GetCount
List1.Clear
For i = 1 To Count
List1.AddItem DDEnum.GetName(i)
Next i
Set DDEnum = Nothing
End Sub
Private Sub Command3_Click()
Dim Count, i As Integer
Set DDSound = DirectX.GetDSEnum
Count = DDSound.GetCount
List1.Clear
For i = 1 To Count
List1.AddItem DDSound.GetDescription(i)
Next i
End Sub
Private Sub Command4_Click()
Dim Count, i As Integer
Set DDSound = DirectX.GetDSEnum
Count = DDSound.GetCount
List1.Clear
For i = 1 To Count
List1.AddItem DDSound.GetName(i)
Next i
End Sub
Private Sub Form_Load()
Command1.Caption = “DirectDraw驱动描述”
Command2.Caption = “DirectDraw驱动名称”
Command3.Caption = “DirectSound驱动描述”
Command4.Caption = “DirectSound驱动名称”
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set DirectX = Nothing
End Sub
运行程序,分别点击不同的按钮,在列表框中就会出现相应的设备驱动名和描述。