unity3d发布EXE去掉边框
来源:互联网 发布:新世界网络教育费用 编辑:程序博客网 时间:2024/06/05 10:32
using UnityEngine;using System.Collections;using System.Runtime.InteropServices;using System;public class Test : MonoBehaviour{ /// <summary> /// 窗口宽度 /// </summary> public int winWidth; /// <summary> /// 窗口高度 /// </summary> public int winHeight; /// <summary> /// 窗口左上角x /// </summary> public int winPosX; /// <summary> /// 窗口左上角y /// </summary> public int winPosY; [DllImport("user32.dll")] static extern IntPtr SetWindowLong(IntPtr hwnd, int _nIndex, int dwNewLong); [DllImport("user32.dll")] static extern bool SetWindowPos(IntPtr hWnd, int hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags); [DllImport("user32.dll")] static extern IntPtr GetForegroundWindow(); const uint SWP_SHOWWINDOW = 0x0040; const int GWL_STYLE = -16; const int WS_BORDER = 1; const int WS_POPUP = 0x800000; // Use this for initialization void Start() { winWidth = 610; winHeight = 350; //显示器支持的所有分辨率 int i = Screen.resolutions.Length; int resWidth = Screen.resolutions[i - 1].width; int resHeight = Screen.resolutions[i - 1].height; winPosX = resWidth / 2 - winWidth / 2; winPosY = resHeight / 2 - winHeight / 2; SetWindowLong(GetForegroundWindow(), GWL_STYLE, WS_POPUP); bool result = SetWindowPos(GetForegroundWindow(), 0, winPosX, winPosY, winWidth, winHeight, SWP_SHOWWINDOW); }}
GUI坐标偏差:
using UnityEngine;using System.Collections;using System.Runtime.InteropServices;using System;public class Test : MonoBehaviour{ /// <summary> /// 窗口宽度 /// </summary> public int winWidth; /// <summary> /// 窗口高度 /// </summary> public int winHeight; /// <summary> /// 窗口左上角x /// </summary> public int winPosX; /// <summary> /// 窗口左上角y /// </summary> public int winPosY; [DllImport("user32.dll")] static extern IntPtr SetWindowLong(IntPtr hwnd, int _nIndex, int dwNewLong); [DllImport("user32.dll")] static extern bool SetWindowPos(IntPtr hWnd, int hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags); [DllImport("user32.dll")] static extern IntPtr GetForegroundWindow(); [DllImport("User32.dll", EntryPoint = "GetSystemMetrics")] public static extern IntPtr GetSystemMetrics(int nIndex); const int SM_CXSCREEN = 0x00000000; const int SM_CYSCREEN = 0x00000001; const uint SWP_SHOWWINDOW = 0x0040; const int GWL_STYLE = -16; const int WS_BORDER = 1; const int WS_POPUP = 0x800000; public GUIText t; // Use this for initialization void Start() { winWidth = 610; winHeight = 350; //当前屏幕分辨率 int resWidth = (int)GetSystemMetrics(SM_CXSCREEN); int resHeight = (int)GetSystemMetrics(SM_CYSCREEN); winPosX = resWidth / 2 - winWidth / 2; winPosY = resHeight / 2 - winHeight / 2 -1; SetWindowLong(GetForegroundWindow(), GWL_STYLE, WS_POPUP); //测试发现左下角坐标为(0,1),修改如下 bool result = SetWindowPos(GetForegroundWindow(), 0, winPosX, winPosY, winWidth, winHeight, SWP_SHOWWINDOW); //bool result = SetWindowPos(GetForegroundWindow(), 0, winPosX, winPosY, winWidth, winHeight, SWP_SHOWWINDOW); } void OnGUI() { if (Input.GetMouseButtonDown(0)) { t.text = "X:"+Input.mousePosition.x + " Y:" + Input.mousePosition.y; } }}
阅读全文
0 0
- unity3d发布EXE去掉边框
- Unity3D 去掉 exe 边框
- Unity3d 去掉exe版本的边框
- Unity3d 去掉exe版本的边框
- Unity3d 去掉exe版本的边框
- 【Unity3D自学记录】Unity3D去掉exe版本的边框
- Unity exe去掉边框
- Unity3d 发布EXE安装程序
- Unity发布成exe文件,去掉分辨率选择窗口
- Unity3D发布为exe后无法连接数据库问题
- IFrame 框架去掉边框
- javascript flash去掉边框
- 去掉panel的边框
- CSS去掉TextBox边框
- 去掉菜单的边框
- GridView去掉边框
- 去掉窗口边框
- 去掉input text边框
- [初学笔记]矩阵
- STVP STM8 COSMIC C编译器在WIN10上的安装使用(附安装与破解软件)
- SessionState的几种设置
- 汉字Unicode解码
- leetcode 第四题:动态规划思想的应用
- unity3d发布EXE去掉边框
- 从 Cryptoeconomics 剖析区块链背后机制
- Android开机图片替换
- JAVA实现远程控制(JAVA in RemoteControl)
- java.lang.Class类详解
- 线上操作与线上问题排查实战
- Greenplum Sequence机制
- android-edittext-validation校验器
- recvfrom: Bad address