游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3375|回复: 10

关于全屏显示的问题~~~~~~~~~~~·&

[复制链接]

6

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
发表于 2005-7-25 18:37:00 | 显示全部楼层 |阅读模式
由于本人初次接触windows程序设计,其中调用api函数时,实在是不知道怎么去设定全屏显示。望各位懂的能指点一下我,感激不尽!~~~(不是窗口最大化)

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-7-25 22:43:00 | 显示全部楼层

Re:关于全屏显示的问题~~~~~~~~~~~··

创建窗口时,把大小设为屏幕大小

0

主题

2

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2005-7-26 11:45:00 | 显示全部楼层

Re:关于全屏显示的问题~~~~~~~~~~~··

方法有很多,简单直接的就是在生成Direct3D对象时如下:
                //创建Direct3D对象,并获取接口IDirect3D9的指针,
        //我们将通过该指针操作Direct3D对象。
        m_pD3D = :irect3DCreate9(D3D_SDK_VERSION);
        D3DPRESENT_PARAMETERS d3dpp;
        ::ZeroMemory(&d3dpp, sizeof(d3dpp));//内存清为0
        /*
        d3dpp.Windowed = TRUE; //创建窗口模式的Direct3D程序
        d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
        /*/
        d3dpp.Windowed   = FALSE; //创建全屏模式的Direct3D程序
                d3dpp.SwapEffect = D3DSWAPEFFECT_FLIP;//模式为填充
  
                d3dpp.BackBufferWidth  = 800;//设定后缓冲宽800
                d3dpp.BackBufferHeight = 600;//设定后缓冲高800
        d3dpp.BackBufferFormat = D3DFMT_A8R8G8B8;//后缓冲格式32位
        */
也可以拾取显示器分辨率进行设置,比较复杂,先看明白这个就行.

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-7-26 12:54:00 | 显示全部楼层

Re:关于全屏显示的问题~~~~~~~~~~~··

楼上,他没说用图形api,他只是说“windows程序设计”

16

主题

404

帖子

404

积分

中级会员

Rank: 3Rank: 3

积分
404
发表于 2005-7-26 13:50:00 | 显示全部楼层

Re:关于全屏显示的问题~~~~~~~~~~~··

把CreateWindow函数的第3个参数改成WS_POPUP,而不是WS_OVERPAPPEDWINDOW,第6个和第7个参数改成GetSystemMetrics(SM_CXSCREEN)和GetSystemMetrics(SM_CYSCREEN),比如:
hWnd = CreateWindow( szName,
                           szTitle,
                                   WS_POPUP,
                                   0,
                           0,
                           GetSystemMetrics(SM_CXSCREEN),
                                   GetSystemMetrics(SM_CYSCREEN),
                                   NULL,
                                   NULL,
                           hInstance,
                           NULL );

6

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2005-7-27 20:56:00 | 显示全部楼层

Re:关于全屏显示的问题~~~~~~~~~~~··

但是如果我的分辨率是800*600,现在我想全屏显示640*480的,那我又该怎么做呢?

24

主题

94

帖子

96

积分

注册会员

Rank: 2

积分
96
发表于 2005-7-27 21:01:00 | 显示全部楼层

Re:关于全屏显示的问题~~~~~~~~~~~··

那应该需要更改分辨率吧?

16

主题

404

帖子

404

积分

中级会员

Rank: 3Rank: 3

积分
404
发表于 2005-7-27 22:48:00 | 显示全部楼层

Re: Re:关于全屏显示的问题~~~~~~~~~~~·&#

初学者RELAY: Re:关于全屏显示的问题~~~~~~~~~~~··~~~~急

但是如果我的分辨率是800*600,现在我想全屏显示640*480的,那我又该怎么做呢?

非得用DX.而不是用Win32 APIs

6

主题

16

帖子

16

积分

新手上路

Rank: 1

积分
16
 楼主| 发表于 2005-7-28 14:12:00 | 显示全部楼层

Re: 关于全屏显示的问题~~~~~~~~~~~··

o ~~~谢谢啊~~~

60

主题

1319

帖子

1319

积分

金牌会员

Rank: 6Rank: 6

积分
1319
发表于 2005-7-29 17:33:00 | 显示全部楼层

Re:关于全屏显示的问题~~~~~~~~~~~··

LONG ChangeDisplaySettings(
  LPDEVMODE lpDevMode,  // graphics mode
  DWORD dwflags         // graphics mode options
);
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-21 08:12

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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