游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4047|回复: 4

C#中调用ChangeDisplaySettings的一个问题

[复制链接]

1

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2005-4-8 14:34:00 | 显示全部楼层 |阅读模式
由于C#中的DEVMODE被映射为struct,所以无法调用ChangeDisplaySetting(null,0)来回到默认的屏幕显示模式,在改变显示模式前,我采用EnumDisplaySettings,枚举了初始的显示模式,在程序退出时以枚举到的DEVMODE为参数ChangeDisplaySetting,但是不能回到默认的显示模式,我也用过ENUM_REGISTRY_SETTINGS为参数枚举出注册的显示模式,然后以枚举出的显示模式为参数调用ChangeDisplaySetting,也无效,大家有什么好办法可以在程序退出时回到默认的屏幕显示模式。

4

主题

67

帖子

67

积分

注册会员

Rank: 2

积分
67
QQ
发表于 2005-4-10 17:17:00 | 显示全部楼层

Re:C#中调用ChangeDisplaySettings的一个问题

不知道。关注中

1

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
 楼主| 发表于 2005-4-27 10:43:00 | 显示全部楼层

Re:C#中调用ChangeDisplaySettings的一个问题

在DX程序中无需调用ChangeDisplaySettings,就可以改变全屏设置

2

主题

58

帖子

60

积分

注册会员

Rank: 2

积分
60
发表于 2005-5-20 20:20:00 | 显示全部楼层

Re:C#中调用ChangeDisplaySettings的一个问题

EnumDisplaySettings(NULL, $FFFFFFFF, lpDevMode) 可以你的当前的显示设备信息

最后用的时候

2

主题

58

帖子

60

积分

注册会员

Rank: 2

积分
60
发表于 2005-5-20 20:22:00 | 显示全部楼层

Re:C#中调用ChangeDisplaySettings的一个问题

    lpDevMode.dmFields := DM_DISPLAYFREQUENCY | DM_PELSWIDTH | DM_PELSHEIGHT;
    ChangeDisplaySettings(lpDevMode, NULL);

    这样应该就可以了吧, 我想.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-25 16:48

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表