Nesse artigo será abordado como trabalhar com alguns elementos da GUI. Os elementos abordados serão, TextField, Button, Slider e Box.
Quando for trabalhar com elementos da UI (User Interface) deve-se primeiro fazer o import necessário no início do arquivo de script
import UnityEngine.UI;
A função OnGUI da própria Unity é a responsável por exibir e interagir com os elementos criados via código.
function OnGUI(){
}
Botão
Para criar botões, o código será o seguinte
if ( GUI.Button( Rect( 10, 70, 100, 30 ), "Input" ) ){
Debug.Log(stringToEdit);
}
Essa é uma das maneiras de criar um botão, pois o método GUI.Button tem várias assinaturas. Da maneira utilizada o primeiro parâmetro está relacionado à posição do botão na interface, que são respectivamente posição X, posição Y, largura e altura do botão. Já o segundo parâmetro é o texto que será exibido no botão.
A criação do botão está dentro de um if pois dessa forma é possível programar dentro do corpo do if algo que seja executado quando o botão for clicado.
TextField
TextFiled são componentes da UI onde o usuário pode entrar(digitar) com texto, para seu uso deve-se criar uma variável que receberá o retorno do texto inserido.
var stringToEdit : String = "Hello World";
Essa variável pode ser criada dentro da própria função OnGUI ou até mesmo no escopo global do script. Para inserir o campo de texto na UI o código abaixo deve ser utilizado.
stringToEdit = GUI.TextField (Rect (10, 150, 100, 30), stringToEdit, 25);
Muito parecido com o botão, o primeiro parâmetro o GUI.TextField é a posição e tamanho do campo de texto, o segundo parâmetro é o texto inicial que será exibido para o usuário, já o terceiro parâmetro indica a quantidade máxima de caracteres que aquele campo irá suportar. Esse método retorna o texto escrito no campo, por isso a stringToEdit está recebendo seu retorno.
Box
Box é um elemento usado para organizar a interface, ela cria um retângulo na sua interface com um título de sua escolha, dessa maneira você pode agrupar elementos. Para utilizar o código será o seguinte.
GUI.Box( Rect( 0, 0, 100, 200 ), "Level Select" );
Segue a mesma ordem do botão e textField, o primeiro parâmetro é a posição na tela e o segundo é o texto título do box.
Group
Group é mais uma forma de organizar os elementos na sua interface, esse componente não í visível, apenas é uma forma de organizar, como pode ser visto no código abaixo
GUI.BeginGroup( Rect( 10, 10, 120, 240) );
Nesse código você determina um novo começo e limite para sua interface, ou seja a partir dessa linha, qualquer referência à posição que um elemento venha a ter, estará relacionada a posição determinada no Group. Para finalizar o grupo e voltar a usar as coordenadas padrão da tela ou iniciar um novo grupo, você deve utilizar a linha seguinte.
GUI.EndGroup();
Horizontal Slider
Horizontal Slider é um elemento que possibilita a escolha do usuário entre em um intervalo de dois valores, um mínimo e um máximo. Deve ser usado da mesma forma que o TextInput, com uma variável de controle. Veja o exemplo abaixo.
private var masterVolume : float = 1.0;
function OnGUI{
masterVolume = GUI.HorizontalSlider( Rect( 120, 35, 200, 30 ), masterVolume, 0.0, 2.0 );
}
Nesse código foi criado a variável de controle como dito acima, e dentro da função OnGUI, o método HorizontalSlider foi usado, e seu retorno aplicado à variável de retorno, o método HorizontalSlider precisa do primeiro parâmentro sendo uma posição e tamanho, o segundo parâmetro é o valor inicial do slider, já o terceiro e quarto parâmetro são respectivamente o valor mínimo e máximo que o Slider irá ter.
Pronto!
Dessa forma você já consegue trabalhar com alguns elementos básicos para criar sua interface com o usuário, em um próximo artigo será explicado sobre Labels e Imagens.
Comentários
Postar um comentário