• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >游戏开发 > 关于添加与关闭窗口的问题

关于添加与关闭窗口的问题

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-05

佚名通过本文主要向大家介绍了服务窗口存在问题,窗口存在问题,窗口单位存在的问题,obs 窗口录制问题,窗口单位问题清单等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 关于添加与关闭窗口的问题
描述:

窗口添加unity3D 

//使用Arraylist存储窗口
var winArrayList = new ArrayList();
//图标
var icon : Texture;
function Start () {
    //添加一个窗口
    winArrayList.Add(Rect(winArrayList.Count*100,50,150,100));
}
function OnGUI () {
    //遍历每个窗口,并且加入视图
    var count = winArrayList.Count;
    for(var i = 0 ; i < count ; i++)
    {
        winArrayList[i]=GUILayout.Window(i,winArrayList[i],AddWindow, "窗口ID: "+i);
    }
}
function AddWindow (windowID:int)
    {
        //开始一个水平布局
        GUILayout.BeginHorizontal();
        //绘制图标
        GUILayout.Label(icon,GUILayout.Width(50),GUILayout.Height(50));
        //绘制文字
        GUILayout.Label("这是一个全新的窗口");
        //关闭水平布局
        GUILayout.EndHorizontal();
        //开始一个水平布局
        GUILayout.BeginHorizontal();
        if(GUILayout.Button("添加新窗口"))
        {
            //添加窗口
            winArrayList.Add(Rect(winArrayList.Count*100,50,150,100));
        }
        if(GUILayout.Button("关闭当前窗口"));
        {
            //关闭窗口
            winArrayList.RemoveAt(windowID);
        }
        //关闭水平布局
        GUILayout.EndHorizontal();
        //设置窗口拖动的区域
        GUI.DragWindow(Rect(0,0,Screen.width,Screen.height));
    }

这是我从书上写的代码
可是运行之后出现这种错误
ArgumentOutOfRangeException: Less than 0 or more than list count.
Parameter name: index
0
System.Collections.ArrayList.ThrowNewArgumentOutOfRangeException (System.String name, System.Object actual, System.String message) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections/ArrayList.cs:3261)
System.Collections.ArrayList.RemoveAt (Int32 index) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections/ArrayList.cs:3019)
添加与关闭敞口.AddWindow (Int32 windowID) (at Assets/添加与关闭敞口.js:43)
UnityEngine.GUILayout+LayoutedWindow.DoWindow (Int32 windowID) (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUILayout.cs:485)
UnityEngine.GUI.CallWindowDelegate (UnityEngine.WindowFunction func, Int32 id, UnityEngine.GUISkin _skin, Int32 forceRect, Single width, Single height, UnityEngine.GUIStyle style) (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUI.cs:1869)
昨天搞了很久都没找到解决办法 。。。
求助各位大神


解决方案1:

  ArgumentOutOfRangeException
数组访问越界错误。
具体在 这句代码
//关闭窗口
            winArrayList.RemoveAt(windowID);
这个windowID越界了。
在删除之前应该判断这个id存不存在


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 关于添加与关闭窗口的问题

相关文章

  • 2022-04-30Unity 3D创建项目,并添加游戏物体和游戏组件
  • 2017-06-05 3d引擎相关
  • 2017-06-05 网游服务端开发,有哪些书籍可供推荐?
  • 2022-04-30Unity 3D脚本应用实例演示(三个实例)
  • 2022-04-30Unity 3D角色动画在游戏中的应用
  • 2017-06-05 俄罗斯方块的旋转算法怎么弄?
  • 2017-06-05 c#一段看不懂的事件和委托
  • 2017-07-22快节奏多人在线游戏网络入门系列教程(4):爆头!滞后补偿
  • 2022-04-30Unity 3D射线
  • 2017-06-05 有人用过unet嘛?有个云ID的问题想请教下

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 关于销毁物体的一个问题,求大神解答下,万分感谢!!
    • Unity 3D Toggle控件
    • 请问魔兽争霸怪物动画资源下载地址是多少
    • 新手问题,请高手相助!
    • Unity 3D Box控件
    • 打包时如何剔除像UnityEngineUIdll这样不需要的类库
    • 求助安卓手游存档问题!
    • CCTableView类中显示没有成员CCPoint
    • 我做了一个h5的画布游戏,用requestanimation控制方向移动,按键控制是否按下方向键,但是有点卡,请问大神怎么优化
    • 如何正确评估一个游戏项目的程序?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有