unity窗口右上角退出按钮拦截

当我还是初学的时候,曾经为了这个事情到处问人,问度娘谷歌,得到一堆说自己调用win32API自己搞一个退出按钮然后在拦截消息的解释,意思是自己重写windows窗口。要是做winfrom肯定可以,但是用unity这似乎就是蛋疼。

后来翻unityAPI才知道,原来有个Application.CancelQuit()函数,也是醉了,官方解释也是模糊到初学者看不懂。

代码如下:

void OnApplicationQuit()
{

/*

  要执行的内容

*/    

  Application.CancelQuit();//退出拦截

}

好了,按这个X一定会被拦截。

通俗易懂。

时间: 2024-08-19 04:32:04

unity窗口右上角退出按钮拦截的相关文章

WM_CLOSE、WM_DESTROY、WM_QUIT的区别(询问,销毁窗口,退出进程,都不是一回事)

1.发送消息SendMessage.PostMessage PostMessage将消息放入消息队列后马上返回,而SendMessage直到窗口过程处理完消息后才返回 2.三个消息的区别 WM_CLOSE: 在系统菜单里选择了“关闭”或者点击了窗口右上角的“X”按钮,你的窗口过程就会收到WM_CLOSE.DefWindowProc对 WM_CLOSE的处理是调用DestroyWindow.当然,你可以不让DefWindowProc处理,而是自己处理,例如询问用户是否保存更改等.如果用户选择“取消

Unity之UGUI初探—按钮动画

今天试了一下unity的新的UI系统—UGUI,感觉很强大,很多功能一目了然,使用起来相当方便接下来就是先试试使用他的动画吧 先创建一个UGUI的按钮,当然也可以先创建画布,然后在画布上创建按钮 然后点击按钮, 图中的transition的选项点开之后,有一项Animation的选项, 点击之后选择Auto Generate Animation 之后会弹出文件夹选项,就会意思是新建的这个动画的保存路径,自己选择路径命名即可,但要在Assets文件夹下 之后在window下,可以选择Animati

JS~模拟表单在新窗口打开,避免广告拦截

说起广告拦截,这应该是浏览器的一个特性,它会将window.open产生的窗口默认为一个广告,将它进行拦截,但有时,这不是我们所希望的,有时,我们就是需要它在客户端的浏览器上弹出一个新窗口,以展示数据处理的更新结果,例如,一个创建商品的预览功能,它需要先保存数据,然后再在新窗口展示最新的信息,这种需求并不少,而大多数人的作法就是使用window.open去弹窗口,但它确实不是一种好的方式! 新方式来了 我们知道表单提交实际上可以把POST的结果响应到新窗口上,我们就是利用表单的这种性质,在JS中

Unity NGUI监听按钮点击事件的三种方法

NGUI版本:3.6.5 1.直接实现OnClick方法: 创建一个脚本,在脚本中实现OnClick()方法,绑定该脚本到按钮上,点击时就会实现OnClick函数内容: 2.使用SendMessage: 选择按钮后,打开Component——NGUI——Interaction,选择Button Message,为按钮添加一个UIButton Message组件: 然后设置UIButton Message中的参数即可: Target:接收按钮消息的游戏对象: Function Name:接收按钮消

ajax请求响应中用window.open打开新窗口会被浏览器拦截的解决方式

一.问题描述 ajax 异步请求成功后需要新开窗口打开 url,使用的是 window.open() 方法,但是会被浏览器给拦截了,需要用户点下. 二.问题分析 浏览器之所以拦截新开窗口是因为该操作并不是用户主动触发的,所以它认为这是不安全的就拦截了,即使 ajax 回调函数中模拟执行 click 或者 submit 等用户行为(trigger('click')),浏览器也会认为不是由用户主动触发的,因此不能被安全执行,所以被拦截. 说明: 1.如果是在 <a href="javascri

js打开新窗口并且不被拦截

window.open是javascript函数,该函数的作用是打开一个新窗口或这改变原来的窗口,如果你直接在js中调用window.open()函数去打开一个新窗口,浏览器会拦截你,那么如何避免呢. 注意,只有直接使用js调用 window.open(url); 打开新窗口时,才会被拦截,如果是改变原理额窗口:window.open(url,'_self'); 则不会被拦截. 那么 js调用 window.open(url); 打开新窗口,如何才能不会浏览器拦截呢? 浏览器会拦截你,是认为你将

猎豹MFC--在窗口中显示按钮

现在框架窗口上定义私有的数据成员: 然后跳转到cpp文件: 上面是把按钮放在了框架窗口内而坐标 工具栏是在框架窗口的哦内部客户区中. 该按钮时放在了外面的框架窗口中.由以下可知: 现在重新做一个放在视图中: 增加私有变量: .给视图类增加OnCreate消息: 以上其实是由两个窗口构成外面的是框架窗口,里面的是视图窗口.两个按钮分别在不同的窗口. 来自为知笔记(Wiz)

PyQt5退出按钮

import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton from PyQt5.QtCore import QCoreApplication class Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): quit = QPushButton('退出', self) quit.cli

unity窗口的显示和隐藏==Button事件

public class Button_1 : MonoBehaviour { //按钮事件 /// <summary> /// 获取要显示.隐藏的窗口 /// </summary> public GameObject m_back; public void Show_Conceal () { // m_back:要实现显示.隐藏的 ※ 窗口 ※ //setActive:实现窗口显示.隐藏的 ※ 方法 ※ m_back.SetActive(!m_back.activeSelf);