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 运行程序,分别点击不同的按钮,在列表框中就会出现相应的设备驱动名和描述。 2 DirectDraw7对象 DirectDraw是一个与Windows 图形系统接口(GDI)相兼容的直接操作显示设备的软件接口。DirectDraw提供与硬件无关性的同时允许直接操作显存。程序只要使用一些基本的标准硬件约定,如:RGB及YUV色彩格式及解析度。你无须调用特殊的过程来使用显存块移动(Blitter)及调色板。使用DirectDraw,你可简单操作显存,完全使用各种硬件特性而不必理会各种不同硬件之间的差异。 2.1 建立DirectDraw对象 DirectDraw7对象是DirectX7中的DirectDraw对象,你需要首先建立一个DirectX7对象,然后使用该对象的DirectDrawCreate方法来建立DirectDraw7对象。例如: Dim DX As New DirectX7 Dim DDraw As DirectDraw7 Set DDraw = DX.DirectDrawCreate(“”) 2.2 建立协作层 当建立了一个DirectDraw对象之后,首先要设定DirectDraw的协作层。实现的方法是调用DirectDraw对象的SetCooperativeLevel函数。该函数的定义是: object.SetCooperativeLevel( hdl As Long, flags As CONST_DDSCLFLAGS) 其中参数hdl指定程序的窗口句柄,参数flag决定程序运行的方式,函数调用 DDraw.SetCooperativeLevel Me.hWnd, DDSCL_NORMAL 将使程序运行于普通的协作层即窗口模式之下。在这种协作层你无法改变主平面调色板或进行页交换,因为程序可以使用多窗口。而函数调用 DDraw.SetCooperativeLevel MainForm.hWnd, DDSCL_EXCLUSIVE Or _ DDSCL_FULLSCREEN 将使程序运行于全屏幕模式之下。在全屏幕协作模式之下你可以完全使用硬件的一切。在这个模式之下,你可以设置使用定义及动态调色板,改变显示分辨率及进行页交换
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved 京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089