在DIRCETDRAW 中如何显示800,600,24位真彩色的图片(50分)

  • 主题发起人 主题发起人 sunwork
  • 开始时间 开始时间
S

sunwork

Unregistered / Unconfirmed
GUEST, unregistred user!
我在使用DIRECTDRAW显示图片的时候,使用的是DIRECTDRAW接口,在使用setdisplaymode
这一函数设置显示模式的时候我只能设置到800,600,8,模式,即能显示 800,600,256色图片,
设置成800,600,24,即800,600,真彩色模式的时候,初始化失败,不知道如何才能
使用DIRECTDRAW显示真彩色的图片呢?
 
你的显示卡是否只支持32位真彩色?

 
是 RIVA TNT2, 应该没有问题的,我在桌面上看过,支持32真彩色的。
C++BUILER的例子里面只是显示640,480,8 的256色图片。
我用DIRECTDRAW7接口时候,可以设置800,600,16显示模式,
但是创建表面的时候失败,各位有这方面的原程序吗?请赐教。
 
看看DDRAW报告的错误码是什么。你只要把错误码的值打出来,我有
个程序可以把它转换成DDRAW的解释。如果要给个E-mail。

一般来说,这些错误码是比较有参考价值的。
 
那就很正常了,24位是设置不了的。

你创建什么表面失败?
 
lhz坛主,错误码的中文意思大概是初始化失败,然后是一个错误码.我想要你说的程序,
我的EM地址是sunnywork@yeah.net,先行谢过.
我在创建主表面的时候已经失败了,按道理说,direct draw应该支持真彩色的显示,
哪个大哥有可以显示真彩色的图片的DIRECTDRAW的BCB程序呢,
因为我在书上看的例子程序都是只是设置成640,480,8模式的.再高一点就没有
详细说明了.
 
各位可以告诉我有没有象DELPHIX那样的控件可以装再BCB上用的呢?谢谢啦.
 
我想请问各位使用DIRECTDRAW究竟能够显示800.600真彩色图片吗?
 
可以,没问题的

首先,你的显存够吗?(现在的显卡应该不存在此问题)
其次,你的显卡支持真彩吗?(现在的显卡应该不存在此问题)
再次,你的显卡是24位还是32位真彩?设置时,如果不对,当然失败。

最好使用缺省刷新率
 
有可以显示800,600真彩色的图片的C++Builder的原程序吗?C++Builder里面自己的
例子程序只能显示800,600,256色图片,例子程序是使用DIRECTDRAW
接口的,是否是接口的问题,因为现在有更加新的接口,DIRECTDRAW7.
 
我有,是个图书阅读软件,可以设置真彩色背景,

使用的 IDirectDraw2 (DirectX 5)

需要的话,发邮件到hustmouse@netease.com

其实和例子应该一样,换个参数就可以了

 
接受答案了.
 
后退
顶部