该代码段展示了如何使用C#和DllImport调用来操作Windows API,实现Unity游戏窗口的最大化、最小化和还原功能。通过指定窗口句柄(hwnd),调用user32.dll中的ShowWindow函数,传入不同的常量(SW_SHOWMINIMIZED, SW_SHOWMAXIMIZED, SW_SHOWRESTORE)来控制窗口的状态。
摘要由CSDN通过智能技术生成
using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using UnityEngine;
public class WindowMaxAndMin : MonoBehaviour
public static WindowMaxAndMin instance;
[DllImport("user32.dll")]
public static extern bool ShowWindow(IntPtr hwnd, int nCmdShow);
[DllImport("user32.dll")]
static extern IntPtr GetForegroundWindow();
[DllImport("user32.dll", EntryPoint = "FindWindow")]
static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
IntPtr ParenthWnd = FindWindow(null, "BMYzhaopianqiang"); //build时候的项目名
const int SW_SHOWMINIMIZED = 2; //{最小化, 激活}
const int SW_SHOWMAXIMIZED = 3;//最大化
const int SW_SHOWRESTORE = 1;//还原
private void Awake()
instance = this;
ParenthWnd = FindWindow(null, "BMYzhaopianqiang");
public void OnClickMinimize()
{ //最小化
//Debug.Log("GetForegroundWindow = " + GetForegroundWindow() + " ParenthWnd = " + ParenthWnd);
// ShowWindow(GetForegroundWindow(), SW_SHOWMINIMIZED);
ShowWindow(ParenthWnd, SW_SHOWMINIMIZED);
//Invoke("OnClickMaximize", 5.0f) ;
public void OnClickMaximize()
//最大化
//ShowWindow(GetForegroundWindow(), SW_SHOWMAXIMIZED);
ShowWindow(ParenthWnd, SW_SHOWMAXIMIZED);
public void OnClickRestore()
ShowWindow(GetForegroundWindow(), SW_SHOWRESTORE);
“build时候的项目名”指的是:
using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using
Unity
Engine;
public class WindowMaxAndMin : MonoBehaviour {
[DllImport("user32.dll")]
public static extern bool ShowWindow(IntP
钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定
窗口
的某种消息,而且所监视的
窗口
可以是其他进程所创建的。当消息到达后,在目标
窗口
处理函数之前处理它。钩子机制允许应用程序截获处理window消息或
特定
事件。
钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当
特定
的消息发出,在没有到达目的
窗口
前,钩子程序就先捕获该消息,亦即钩子函数先得到...
一:简单介绍
1,用
Unity
打包发布PC程序,有时候不充满整个屏幕,感觉效果不好,需要在打开程序时,
窗口
是充满整个屏幕的,且有
窗口
任务栏,简单来说,就是
窗口
最大化
先看效果图
二:一个脚本解决问题
把下面这个脚本挂在一个新建的场景空物体上,运行就可以看到想要的效果了
using Syst...
自己总结出来的
unity
3d发布
窗口
设置,可以指定位置,
大小
,
窗口
式样(边框,标题,按钮,滚动条,隐藏,激活,置顶,置底等)。
下载之后直接把脚本挂物体上就可使用。
如果有不明白的请打开脚本,脚本里面的注释已经写得很清楚了。
public class WindowAPI : MonoBehaviour
[DllImport("user32.dll", EntryPoint = "FindWindow")]
private static extern IntPtr F.
Unity
引擎是一款广泛用于游戏开发的跨平台工具,它的界面通常包括常见的
窗口
操作按钮,如
最大化
、
最小化
和关闭。在
Unity
编辑器中,这些按钮位于
窗口
标题栏的右上角:
1. **
最大化
/恢复**:点击
最大化
按钮可以使当前
窗口
充满整个屏幕,占据所有空间;再次单击它会将
窗口
恢复到原来的
大小
。
2. **
最小化
**:这个按钮通常是一个向下箭头图标,点击后可以将
窗口
缩小成一个图标,并移至任务栏,方便切换其他
窗口
或程序。
3. **关闭**:最右边的一个X图标,点击它会直接关闭当前的
Unity
编辑器
窗口
。如果还有其他未保存的修改,系统可能会弹出确认框询问是否保存。
请注意,
Unity
的界面设计可能会根据不同版本和个人设置略有差异,以上描述是一般的标准布局。如果你需要更详细的操作教程,可以在
Unity
官方网站或官方文档中查找相关信息。