Vilarejo PK2P
Bem-vindo ao fórum Vilarejo PK2P! O fórum oficial do canal Press Key to Play do Youtube!

Grupo para reunir as pessoas que acompanham os vídeos no canal Press Key to Play e discutir os assuntos abrangidos pelo Blog PK2P.


Você não está conectado. Conecte-se ou registre-se

[tutorial] java swing: parte 1

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 [tutorial] java swing: parte 1 em 8/9/2017, 21:53

e ae galera nesse tutorial vamos aprender a criar um programa com interface grafica (GUI) em java com o swing, a linguagem java não é meu forte apesar de brincar com ela deis de 2011 embora não tenho progredido tanto em java, sei que existem outros frameworks melhores e mais recente para o desenvolvimento de interfaces graficas em java, como infelizmente eu so conheço o swing então vamos brincar com ele mesmo '-', para facilitar vou esta usando o eclipse como IDE, para começar a gente cria um projeto novo e uma classe nele

Código:
package kodo;

public class Principal {
    public static void main(String[] args) {
    }
}



importamos as classes do swing (javax.swing.*)

Código:
package kodo;

import javax.swing.*;

public class Principal {
    public static void main(String[] args) {
    }
}

para começar a gente cria uma janela para isso usamos a class JFrame (javax.swing.JFrame), então instanciamos um objeto dela (podemos passar uma string que sera o titulo)

Código:
package kodo;

import javax.swing.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
    }
}

com o objeto criado podemos exibir ele com o metodo setVisible, passamos como argumento true ()

Código:
package kodo;

import javax.swing.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
   janela.setVisible(true);
    }
}

tambem é possivel usar o metodo show porem é um metodo deprecated ou seja caiu em desuso

Código:
package kodo;

import javax.swing.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
   janela.show();
    }
}



podemos redimensionar essa janela com o metodo setSize, nesse metodo passamos 2 argumentos, a largura horizontal (x), o segundo é argumento é largura vertical (y)

Código:
package kodo;

import javax.swing.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
   janela.setSize(400,300);
   janela.setVisible(true);
    }
}

podemos passar um objeto do tipo Dimension (java.awt.Dimension) no lugar do argumentos para o setSize

Código:
package kodo;

import javax.swing.*;
import java.awt.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   Dimension tamanho = new Dimension(400,300);
   
   janela = new JFrame("minha janela");
   janela.setSize(tamanho);
   janela.setVisible(true);
    }
}

para mudar a posição da janela usamos o metodo setLocation, passamos como argumento para ele a posição horizontal (x) e a posição vertical (y)

Código:
package kodo;

import javax.swing.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
   janela.setSize(400,300);
   janela.setLocation(450,450);
   janela.setVisible(true);
    }
}

podemos passar para o metodo setLocation um objeto do tipo Point (java.awt.Point)

Código:
package kodo;

import javax.swing.*;
import java.awt.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   Point pos = new Point(450,450);
   
   janela = new JFrame("minha janela");
   janela.setSize(400,300);
   janela.setLocation(pos);
   janela.setVisible(true);
    }
}

com o metodo setBounds mudamos tanto a posição da janela quanto a largura, nesse metodo passamos como argumento a posição x e y seguido do largura x e y

Código:
package kodo;

import javax.swing.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
   janela.setBounds(200,200,640,480);
   janela.setVisible(true);
    }
}

ou tambem podemos passar o objeto Rectangle (java.awt.Rectangle) para o setBounds

Código:
package kodo;

import javax.swing.*;
import java.awt.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   Rectangle jan = new Rectangle(200,200,640,480);
   
   janela = new JFrame("minha janela");
   janela.setBounds(jan);
   janela.setVisible(true);
    }
}



podemos alterar o titulo de uma janela com o metodo setTitle

Código:
package kodo;

import javax.swing.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
   janela.setBounds(200,200,300,300);
   janela.setTitle("novo titulo");
   janela.setVisible(true);
    }
}

podemos mudar a cor do fundo da janela usando o metodo getContentPane seguido do setBackground, especificamos a cor com atributo do Color (java.awt.Color)

Código:
package kodo;

import javax.swing.*;
import java.awt.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
   janela.setBounds(200,200,300,300);
   janela.getContentPane().setBackground(Color.blue);
   janela.setVisible(true);
    }
}



as vezes quando fechamos a janela o terminal fica preso, podemos forçar essa finalização usando o metodo setDefaultCloseOperation passamos como argumento para ele o atributo EXIT_ON_CLOSED

Código:
package kodo;

import javax.swing.*;

public class Principal {
    private static JFrame janela;
   
    public static void main(String[] args) {
   janela = new JFrame("minha janela");
   janela.setBounds(200,200,300,300);
   janela.setDefaultCloseOperation(janela.EXIT_ON_CLOSE);
   janela.setVisible(true);
    }
}

bom galera esse tutorial tera uma segunda parte ^^ (ps: não quero escrever mais, vou assistir anime!!!)

by kodo no kami

Ver perfil do usuário https://eofclub.in/forum

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum