幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
12
返回列表 发新帖
楼主: 好人卡的

[求助]有没有办法屏蔽掉OpenGL做出的窗口上面的那个叉?

[复制链接]

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
发表于 2007-3-13 22:04:51 | 显示全部楼层
你把glut退出事件给拦下来,重写一个好了。
具体的函数应该就是在glut中的。
ActionOnWindowClose   
The behaviour when the user closes a window.

Exit    Exit the whole program when any window is closed or leaveMainLoop is called (default).
MainLoopReturns       Return from mainLoop when any window is closed.
ContinueExectuion    Return from mainLoop after the last window is closed.

查错了,这个ActionOnWindowClose不是c语言的glut中的。
え~え~お!!!
回复 支持 反对

使用道具 举报

好人卡的 该用户已被删除
 楼主| 发表于 2007-3-13 22:15:16 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
发表于 2007-3-13 22:52:53 | 显示全部楼层
不用重写的,理论只要捕获按下x后产生的事件就可以。
但是我翻一下http://www.opengl.org/documentation/specs/glut/spec3/spec3.html
上的doc没有找到,相应的消息循环.....
不知道glut中event处理到底是怎么回事。

但如果你是用SDL来写的那就太简单了。
  1. SDL_Event event;
  2. while (SDL_PollEvent(&event)){
  3.     if (event.type == SDL_QUIT)
  4.              .....
  5.      }
复制代码
え~え~お!!!
回复 支持 反对

使用道具 举报

好人卡的 该用户已被删除
 楼主| 发表于 2007-3-13 23:30:02 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

88

主题

5419

帖子

214748万

积分

版主

S素世上最伟大最华丽

Rank: 7Rank: 7Rank: 7

积分
2147483647
QQ
发表于 2007-3-14 10:12:25 | 显示全部楼层
什么是SDL?
即 Simple DirectMedia Layer,使用 LGPL 许可证。

免费的跨平台多媒体应用编程接口
用于游戏、游戏开发工具、模拟器、样本演示、多媒体应用等
它能做什么?
视频、音频、事件、CDROM支持、线程、计时器、各种图象文件格式读取、快速绘图、混音、游戏杆支持、网络、MPEG解码等等,且CPU字节顺序无关。
回复 支持 反对

使用道具 举报

好人卡的 该用户已被删除
 楼主| 发表于 2007-3-14 11:40:10 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
发表于 2007-3-14 14:34:01 | 显示全部楼层
在SDL中的作法是
先要一个头文件
  1. #include "windows.h"
复制代码
  1. ....
  2. SDL_Event event;
  3. while (SDL_PollEvent(&event)){
  4.   if (event.type == SDL_QUIT)
  5.      MessageBox(NULL,"直接退出游戏可能会导致游戏数据丢失!确认你已存档后,再点确定按钮退出。","警告",MB_OKCANEL);
  6.      break;
  7. ....
  8.   }
复制代码
这样在你点了x后,会出现一个弹出窗口来提醒用户。
你也可以把MessageBox换成你游戏内部的UI事件,效果会更好。

你也可以不用SDL
nehe的opengl教学,在第一课就已经作好了这个框架了。(就是vc源码的那个)
可以在这个基础上接着写opengl程序,而不再需要什么window编程方面的东西。
え~え~お!!!
回复 支持 反对

使用道具 举报

好人卡的 该用户已被删除
 楼主| 发表于 2007-3-14 15:26:38 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-5-2 14:46 , Processed in 0.026909 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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