vb6。屏幕分辨率。.dmFields = DM_PELSHEIGHT Or ···请见下。谢谢

声明ChangeDisplaySettings+EnumDisplaySettings像ChangeDisplaySettings+EnumDisplaySettings... 声明ChangeDisplaySettings+EnumDisplaySettings

像ChangeDisplaySettings+EnumDisplaySettings+DEVMODE函数我都查了,大体知道什么意思。但是加上具体数值,放到程序里还是不是很清楚。请赐教。谢谢
1、第1处,两个0指?而NewDevmode就是建立个新Devmode吧?
2、第2处,=那么多or啥意思?&H100000,&H80000等16位数值代表什么?(我知dmFields 指定了 DEVMODE 结构的其余成员中哪些已被初始化)
3、第3处,啥意思,尤其那个&H4?(我知成功返回1,失败返回0)。

以上都是在vb的模块中,而在窗体中的调用,如下:
scrw = Screen.Width / Screen.TwipsPerPixelX '水平像素
scrh = Screen.Height / Screen.TwipsPerPixelY '竖直像素
If scrw <> 1280 Or scrh <> 1024 Then kk = SetDisplaymode(1280, 1024, 32, 60)
(32位真彩+60Mhz啥意思?)
谢谢
展开
 我来答
然后去远足
推荐于2016-04-28 · TA获得超过1万个赞
知道大有可为答主
回答量:4016
采纳率:83%
帮助的人:2449万
展开全部

  谢邀。

 

1、

  我们先来看函数原型:

BOOL EnumDisplaySettings(
    LPCTSTR lpszDeviceName, // Display Device显示设备名称字符串指针
    DWORD iModeNum,         // Graphics Mode显示设备物理模式 
    LPDEVMODE lpDevMode     // Graphics Mode Settings物理模式设置 
);

  其中第一个参数即可以指定一个显示设备,也可以传入空指针NULL(也就是0&)来表示当前线程所使用的显示设备。

  第二个参数是图形模式索引,或者是枚举值ENUM_CURRENT_SETTINGS(&0)或ENUM_REGISTRY_SETTINGS(&1)之一,&0 即当前线程所使用的显示设备的设置。

 

2、

  这里的 Or 不是逻辑运算符“或”(对应 C/C++ 里的 || 运算符),而是位运算符“按位或”(对应 C/C++ 里的 | 运算符)。具体资料可以自行百度。

 

3、

  还是看函数原型:

LONG ChangeDisplaySettings( 
    LPDEVMODE lpDevMode,  // 指向一个描述转变图表的DEVMODE的指针。
    DWORD dwflags         // 表明了图形模式如何改变
);

  第二个参数可以是如下几种:

  ● 0:表明当前屏幕的图形模式要动态地改变。

  ● CDS_UPDATEREGISTRY:表明当前屏幕的图形模式会动态地变化,并且该图形模式会更新注册表。该模式信息存贮在用户档案中。

  ● CDS_TEST:系统检测是否要设置被请求的图形模式。指定CDS_TEST允许一个应用确定哪个图形模式真正的有效。但并不会使系统变为那个有效的图形模式。

  ● CDS_FULLSCREEN:从本质上讲该模式是暂时的。

  ● CDS_GLOBAL:该设置保存在全局设置区域内, 因此它们会影响所有的用户。该标志仅在与标志一起使用时才有效。CDS_SET_PRIMARY:该设备成为首要设备。

  ● CDS_RESET:设置要改变,即使请求的设置与当前设置一样。CDS_NORESET:设置保存在注册表中,但是它不起作用,该标志只有与CDS_UPDATEREGISTRY标志一起使用时才有效。

 

4、

  所谓“32位真彩”指的是图象的位分辨率(简称“位深”),是用来衡量每个像素储存信息的位数。这种分辨率决定可以标记为多少种色彩等级的可能性。32位真彩模式即每个像素用32位表示。

  计算机是用二进制来表示颜色的,16位色即有2^16=65536种发色,24位色发色数2^24=1677万多种发色,这是人眼所能分辨的极限了,所以被称为“真彩色”。32位色并不是说发色数是2^32了,还是2^24,不过它增加了256阶颜色的灰度(也就是用ARGB来表示颜色里的A了)。

  60Mhz是显示器刷新频率。

 

参考资料:

http://msdn.microsoft.com/en-us/library/aa920775.aspx

http://technet.microsoft.com/zh-tw/library/dd183411

来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式