GUI KEYBOARD

From Unify Community Wiki
Revision as of 17:41, 11 December 2012 by TomoI (Talk | contribs)

Jump to: navigation, search
This page needs to be cleaned up.

Please refer to the Formatting Guidlines.

using UnityEngine; using System.Collections; using System.Collections.Generic;

public class Virtual_Keyboard : MonoBehaviour {

public GUISkin MySkin;

#region Scrolling Keyboard Textures

public Texture2D Letter_A; public Texture2D Letter_B; public Texture2D Letter_C; public Texture2D Letter_D; public Texture2D Letter_E; public Texture2D Letter_F; public Texture2D Letter_G; public Texture2D Letter_H; public Texture2D Letter_I; public Texture2D Letter_J; public Texture2D Letter_K; public Texture2D Letter_L; public Texture2D Letter_M; public Texture2D Letter_N; public Texture2D Letter_O; public Texture2D Letter_P; public Texture2D Letter_Q; public Texture2D Letter_R; public Texture2D Letter_S; public Texture2D Letter_T; public Texture2D Letter_U; public Texture2D Letter_V; public Texture2D Letter_W; public Texture2D Letter_X; public Texture2D Letter_Y; public Texture2D Letter_Z; public Texture2D Number_0; public Texture2D Number_1; public Texture2D Number_2; public Texture2D Number_3; public Texture2D Number_4; public Texture2D Number_5; public Texture2D Number_6; public Texture2D Number_7; public Texture2D Number_8; public Texture2D Number_9; public Texture2D Add; public Texture2D Subtract; public Texture2D Divide; public Texture2D Multiply; public Texture2D equals;

#endregion

//reset button texture public Texture2D ResetButtonTexture;

//keyboard position floats private float offset = 10f;

//text input stuff public string character; // used as the string holder for textfield etc

//KeyBoard private bool displayKeyBoard = true; private const int KEYBOARD_WINDOW_ID = 0; private Rect KeyBoardRect = new Rect(0, 0, 0, 0); private Vector2 KeyBoardSlider = Vector2.zero;

//reset button private bool ResetString = true;


//amount of buttons to have dependant on alphabet , numbers , symbols you want etc private float amtButtons = 41f;

//keyboard button sizes private float buttonWidth = 70f; private float buttonHeight = 70f;


// Use this for initialization void Start () {

}

// Update is called once per frame void Update () {

}

void OnGUI () { GUI.skin = MySkin;

if(displayKeyBoard) { KeyBoardRect = GUI.Window(KEYBOARD_WINDOW_ID, new Rect(offset, Screen.height - (offset + 125f), Screen.width - (offset * 2), 125f), KeyBoardWindow, "" ); }

if(ResetString) { if(GUI.Button(new Rect(Screen.width /2, Screen.height /2, buttonWidth, buttonHeight), ResetButtonTexture)) { character = ""; } }

}

private void KeyBoardWindow(int id) { KeyBoardSlider = GUI.BeginScrollView(new Rect(5, 15, KeyBoardRect.width - 10, 100f), KeyBoardSlider , new Rect(-5f , -6f, buttonWidth * amtButtons + offset * 3, buttonHeight + offset)); { Populate();

       }

GUI.EndScrollView(); }


// populate buttons with textures and desired input functions if you add or delete change amtButtons float to required number of buttons #region populate void Populate () {

//alphabet buttons


if(GUI.Button(new Rect(offset, 0, buttonWidth, buttonHeight), Letter_A)) { character = character + "A"; }

           if(GUI.Button(new Rect(buttonWidth * 1 + offset, 0, buttonWidth, buttonHeight), Letter_B))

{ character = character + "B" ; }

           if(GUI.Button(new Rect(buttonWidth * 2 + offset, 0, buttonWidth, buttonHeight), Letter_C))

{ character = character + "C"; }

           if(GUI.Button(new Rect(buttonWidth * 3 + offset, 0, buttonWidth, buttonHeight), Letter_D))

{ character = character + "D"; } if(GUI.Button(new Rect(buttonWidth * 4 + offset, 0, buttonWidth, buttonHeight), Letter_E)) { character = character + "E"; }

           if(GUI.Button(new Rect(buttonWidth * 5 + offset, 0, buttonWidth, buttonHeight), Letter_F))

{ character = character + "F"; }

           if(GUI.Button(new Rect(buttonWidth * 6 + offset, 0, buttonWidth, buttonHeight), Letter_G))

{ character = character + "G"; }

           if(GUI.Button(new Rect(buttonWidth * 7 + offset, 0, buttonWidth, buttonHeight), Letter_H))

{ character = character + "H"; } if(GUI.Button(new Rect(buttonWidth * 8 + offset, 0, buttonWidth, buttonHeight), Letter_I)) { character = character + "I"; }

           if(GUI.Button(new Rect(buttonWidth * 9 + offset, 0, buttonWidth, buttonHeight), Letter_J))

{ character = character + "J"; }

           if(GUI.Button(new Rect(buttonWidth * 10 + offset, 0, buttonWidth, buttonHeight), Letter_K))

{ character = character + "K"; }

           if(GUI.Button(new Rect(buttonWidth * 11 + offset, 0, buttonWidth, buttonHeight), Letter_L))

{ character = character + "L"; } if(GUI.Button(new Rect(buttonWidth * 12 + offset, 0, buttonWidth, buttonHeight), Letter_M)) { character = character + "M"; }

           if(GUI.Button(new Rect(buttonWidth * 13 + offset, 0, buttonWidth, buttonHeight), Letter_N))

{ character = character + "N"; }

           if(GUI.Button(new Rect(buttonWidth * 14 + offset, 0, buttonWidth, buttonHeight), Letter_O))

{ character = character + "O"; }

           if(GUI.Button(new Rect(buttonWidth * 15 + offset, 0, buttonWidth, buttonHeight), Letter_P))

{ character = character + "P"; } if(GUI.Button(new Rect(buttonWidth * 16 + offset, 0, buttonWidth, buttonHeight), Letter_Q)) { character = character + "Q"; }

           if(GUI.Button(new Rect(buttonWidth * 17 + offset, 0, buttonWidth, buttonHeight), Letter_R))

{ character = character + "R"; }

           if(GUI.Button(new Rect(buttonWidth * 18 + offset, 0, buttonWidth, buttonHeight), Letter_S))

{ character = character + "S"; }

           if(GUI.Button(new Rect(buttonWidth * 19 + offset, 0, buttonWidth, buttonHeight), Letter_T))

{ character = character + "T"; } if(GUI.Button(new Rect(buttonWidth * 20 + offset, 0, buttonWidth, buttonHeight), Letter_U)) { character = character + "U"; }

           if(GUI.Button(new Rect(buttonWidth * 21 + offset, 0, buttonWidth, buttonHeight), Letter_V))

{ character = character + "V"; }

           if(GUI.Button(new Rect(buttonWidth * 22 + offset, 0, buttonWidth, buttonHeight), Letter_W))

{ character = character + "W"; }

           if(GUI.Button(new Rect(buttonWidth * 23 + offset, 0, buttonWidth, buttonHeight), Letter_X))

{ character = character + "X"; } if(GUI.Button(new Rect(buttonWidth * 24 + offset, 0, buttonWidth, buttonHeight), Letter_Y)) { character = character + "Y"; }

           if(GUI.Button(new Rect(buttonWidth * 25 + offset, 0, buttonWidth, buttonHeight), Letter_Z))

{ character = character + "Z"; } if(GUI.Button(new Rect(buttonWidth * 26 + offset, 0, buttonWidth, buttonHeight), Number_0)) { character = character + "0"; }

           if(GUI.Button(new Rect(buttonWidth * 27 + offset, 0, buttonWidth, buttonHeight), Number_1))

{ character = character + "1"; }

           if(GUI.Button(new Rect(buttonWidth * 28 + offset, 0, buttonWidth, buttonHeight), Number_2))

{ character = character + "2"; }

           if(GUI.Button(new Rect(buttonWidth * 29 + offset, 0, buttonWidth, buttonHeight), Number_3))

{ character = character + "3"; } if(GUI.Button(new Rect(buttonWidth * 30 + offset, 0, buttonWidth, buttonHeight), Number_4)) { character = character + "4"; }

           if(GUI.Button(new Rect(buttonWidth * 31 + offset, 0, buttonWidth, buttonHeight), Number_5))

{ character = character + "5"; } if(GUI.Button(new Rect(buttonWidth * 32 + offset, 0, buttonWidth, buttonHeight), Number_6)) { character = character + "6"; }

           if(GUI.Button(new Rect(buttonWidth * 33 + offset, 0, buttonWidth, buttonHeight), Number_7))

{ character = character + "7"; }

           if(GUI.Button(new Rect(buttonWidth * 34 + offset, 0, buttonWidth, buttonHeight), Number_8))

{ character = character + "8"; }

           if(GUI.Button(new Rect(buttonWidth * 35 + offset, 0, buttonWidth, buttonHeight), Number_9))

{ character = character + "9"; } if(GUI.Button(new Rect(buttonWidth * 36 + offset, 0, buttonWidth, buttonHeight), Add)) { character = character + "+"; }

           if(GUI.Button(new Rect(buttonWidth * 37 + offset, 0, buttonWidth, buttonHeight), Subtract))

{ character = character + "-"; } if(GUI.Button(new Rect(buttonWidth * 38 + offset, 0, buttonWidth, buttonHeight), Divide)) { character = character + "/"; }

           if(GUI.Button(new Rect(buttonWidth * 39 + offset, 0, buttonWidth, buttonHeight), Multiply))

{ character = character + "*"; }

           if(GUI.Button(new Rect(buttonWidth * 40 + offset, 0, buttonWidth, buttonHeight), equals))

{ character = character + "="; } }

#endregion }

Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox