• ugui用户定义操作按键


    界面很简单,只创建了一Image,Image下边有一个Text。基本思路是点击Image,Text清空,进入修改状态,然后用户按下任意键,按下的任意键极为修改后的键

    然后下面的脚本是挂在Image下面的

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.UI;
    using UnityEngine.EventSystems;
    using System;
    
    public class ChangeButton : MonoBehaviour, IPointerClickHandler
    {
    
        private KeyCode defult = KeyCode.A;
        private bool willchange;
        // Use this for initialization
        void Start()
        {
            if (GetComponentInChildren<Text>().text != defult.ToString().ToUpper())
            {
                GetComponentInChildren<Text>().text = defult.ToString().ToUpper();
            }
        }
    
        // Update is called once per frame
        void Update()
        {
            if (Input.GetKeyDown(defult))
            {
                Debug.Log(defult + "被按下");
            }
        }
        void OnGUI()
        {
            GUI.Label(new Rect(10, 10, 300, 30), "当前按键为:" + defult.ToString().ToUpper());
            if (willchange)
            {
                GUI.Label(new Rect(10, 50, 300, 30), "按任意键修改按键");
    
                if (Input.anyKeyDown)
                {
                    Event e = Event.current;
                    Debug.Log(e.keyCode);
                    Debug.Log(e);
                    if (e.isKey)
                    {
                        defult = e.keyCode;
                        GetComponentInChildren<Text>().text = defult.ToString().ToUpper();
                        willchange = false;
                    }
                }
            }
        }
    
        public void OnPointerClick(PointerEventData eventData)
        {
            willchange = true;
            GetComponentInChildren<Text>().text = "";
        }
    }
    

      

  • 相关阅读:
    学习笔记::有上下界的网络流
    zoj2314
    bzoj3261
    bzoj 1898
    bzoj4009
    bzoj4033
    bzoj3389
    bzoj2427
    uva 11825
    交换A与B值的四种方法
  • 原文地址:https://www.cnblogs.com/lanrenqilanming/p/7007939.html
Copyright © 2020-2023  润新知