Mostrando postagens com marcador rapido. Mostrar todas as postagens
Mostrando postagens com marcador rapido. Mostrar todas as postagens

sábado, 26 de janeiro de 2013

Como gerar números aleatórios em java

Introdução

O principal objetivo deste artigo é explicar de maneira simples e rápida como se gera um simples número inteiro em programa Java.

Para gera um número aleatório de maneira simples e rápido basta utilizar a Classe java.util.Random.


Sintaxe:

        Random random  = new Random();
    random.nextInt(NUMERO);

Onde:

NUMERO - Limite de a ser utilizado.

Abaixo é possível ver um exemplo de como obter um número inteiro entre 0 e 30.

import java.util.Random;

public class Gerador {

    public static void main(String args[])
    {
        Random radom  = new Random();
        int numeroTmp = 0;
        for(int i=0;i;i++){                          numeroTmp=radom.nextInt(30);
            System.out.println(">"+numeroTmp);
        }
        }
}


Neste exemplo foi utilizado o número máximo 30 como é possível ver na linha abaixo:

          numeroTmp=radom.nextInt(30);


Abaixo é possível ver o saida do console:

>9
>29
>5
>13
>6
>3
>29
>17
>2
>9

 

quinta-feira, 22 de novembro de 2012

Localizar destino de um link no linux

Resumo


ls -l nome_link

Introdução


O principal objetivo deste post é explicar de maneira simples e rápida como se encontra o destino de um link no sistema operacional linux através do termnal.


Descobrindo destino do link


Para descobri o destino de um link pasta seguir a seguinte sintaxe:

ls -l nome_do_link


Onde:

  • nome_do_link - O nome do link que você deseja descobri o destino.

Exemplo:

ls -l vim





Figura 1: Exemplo da execução do comando ls -l

quarta-feira, 31 de outubro de 2012

Criando um novo facebook


Introdução

O principal objetivo deste post é explicar de maneira simples e rápido como se cria uma conta no facebook.


Criando uma conta

O primeiro passo para criar uma conta no facebook é entrar na site do mesmo.


http://www.facebook.com



Figura 1: Tela Inicial do facebook


Após entrar no site do facebook é necessário preencher os dados para cadastro, localizado abaixo do item "Cadastre-se":

Figura 2: Cadastro de um novo usuário.

Após preencher os dados e clicar no botão Cadastre-se, você será direcionado para página de procura amigos, neste caso foi utilizado um email do hotmail para criar um conta. Caso vocẽ queira encontrar algum amigo com esse email, basta clicar em "Localizar amigos", caso contrário basta clicar em  "Pular esta etapa".

 Figura 3: Primeira etapa do cadastro.

Na próxima etapa será necessário informar mais algumas informações do seu perfil, que podem vir a ajudar te localizarem no facebook.


Figura 4: Preechimento de informações para perfil.


Na próxima etapa é necessário escolher uma foto para seu perfil. Você pode escolher uma foto de seu computador ou tirar da sua própria webcam. Para prosseguir basta clicar em "Salvar e Continuar". Caso não deseje anexar uma imagem basta clicar em "pular".

 Figura 5: Escolha de foto para perfil.


Logo que a ultima etapa for passada, você será direcionada para tela inicial do facebook, na mesma é informado que é necessário acessar seu e-mail, que foi utilizad no cadastro.

Figura 6: Tela inicial do facebook.


Agora é necessário abrir a caixa de email no qual você cadastrou seu facebook, no me caso foi utilizado um e-mail do hotmail.

 Figura 7: Caixa de email com e-mails do facebook.

Clique no e-mail que está escrito algo como "Você tem mais uma etapa..." . No e-mail que abrir basta clicar no botão "Conclua o Cadastro".

Figura 8: Email de conclusão de cadastro.

Após você clicar no botão "Conclu o Cadastro", você será direcionado novamente para página inicial do facebook.

Figura 9: Tela inicial do facebook.

Agora caso você deseje entrar no facebook, basta você entrar no site do mesmo(http://www.facebook.com).


Figura 10: Tela inicial do facebook para login com conta recém criada.


Conclusão

Como foi ver ao longo do post a criação e uma conta no facebook é bem simples, basta ter um email.

segunda-feira, 29 de outubro de 2012

Criando uma aplicação passo-a-passo com java Swing


Introdução

 

Java é uma ótima linguagem orientada objeto para criar aplicações que fazem utilização de interface gráfica, seja em desktop ou web.
Neste artigo será criado um aplicativo simples que tem a função de ser uma calculadora com uma interface gráfica utilizando Swing.

 

Pré-requisitos

Para criar a aplicação é necessário ter instalado em seu computador o seguinte programa.
  • NetBeans – É necessário que se tenha instalado uma IDE para facilitar o desenvolvimento do projeto. Para o artigo foi escolhido o NetBeans, pois acredito ser mais fácil criar telas utilizando Swing com o mesmo.

 

Criando um projeto

Para criar um projeto no NetBeans é bem simples, basta clicar em: Arquivo > Novo Projeto

Tela inicial do netbeans
Figura 1: Tela inicial do NetBeans

Após clicar no item “Novo Projeto”, será dada a opção para escolher o tipo de projeto escolha:
  • Categorias: Java
  • Projetos: Aplicação Java
  •  
Tela de escolha tipo projeto
Figura 2: Tela de escolha tipo projeto

Após fazer as escolhas corretas clique em Próximo para ir a nova tela.
Na tela a seguir é necessário informar o nome do projeto, neste caso criei o projeto com nome de CalculadoraSwing.

Adição de nome ao projeto
Figura 3: Adição de nome ao projeto

Após criar o projeto é necessário criar uma classe que será responsável por realizar todos o cálculos que serão fornecidos pelo usuário através da tela, foi criada classe Calculos.java para realizar essa função.
Para criar uma classe no NetBeans, basta clicar no projeto com o botão direito e escolher a opção: Novo > Classe Java

Tela para criação de uma nova classe
Figura 4: Tela para criação de uma nova classe

Abaixo é possível ver o conteúdo da classe Calculo.java

Listagem 1: Classe Calculo.java
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package calculadoraswing;

import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Robson Fernando Gomes
 */
public class Calculos {

    public static void main(String args[])
    {
        Calculos c=new Calculos();
        System.out.println(">>>>"+c.calculadora("5/5"));
    }
    public String calculadora(String expressao) {
        String resultado;
        List listaNumeros = new ArrayList();
        List listaOperadores = new ArrayList();

        listaNumeros = obterNumeros(expressao);
        listaOperadores = obterOperadores(expressao);

        resultado = calcularValor(listaNumeros, listaOperadores);

        return resultado;

    }

    private String calcularValor(List listaNumeros, List listaOperadores) {
        String resultado = "";
        double total = 0.0;
        int j=0;
        for (int i = 0; i < listaNumeros.size()-1; i++) {

            if ( total==0.0) {
                double numero1 = listaNumeros.get(i).doubleValue();
                double numero2 = listaNumeros.get(i + 1).doubleValue();
                char operador = listaOperadores.get(i).charValue();
                total = executarOperacao(numero1, operador, numero2);
            }
            else if (total>0.0) {
               
                double numero2 = listaNumeros.get(i).doubleValue();
                char operador = listaOperadores.get(j).charValue();
                total = executarOperacao(total, operador, numero2);
                j++;
            }
           
           

        }

        resultado = ""+total;
        return resultado;
    }

    private double executarOperacao(double numero1, char operador, double numero2) {
        double resultado = 0.0;

        if (operador == '+') {
            resultado = numero1 + numero2;
        } else if (operador == '-') {
            resultado = numero1 - numero2;
        } else if (operador == '/') {
            resultado = numero1 / numero2;
        } else if (operador == '*') {
            resultado = numero1 * numero2;
        }
        return resultado;
    }

    private List obterNumeros(String expressao) {

        List listaNumeros = new ArrayList();

        String numeroEmString = "";
        for (int i = 0; i < expressao.length(); i++) {

            if (isOperador(expressao.charAt(i))) {
                Double numero = Double.valueOf(numeroEmString);
                listaNumeros.add(numero);
                numeroEmString = "";
            } else {
                numeroEmString = numeroEmString.concat("" + expressao.charAt(i));
            }
        }
        if(!numeroEmString.isEmpty())
        {
                Double numero = Double.valueOf(numeroEmString);
                listaNumeros.add(numero);
           
        }
        return listaNumeros;
    }

    private List obterOperadores(String expressao) {

        List listaOperadores = new ArrayList();


        for (int i = 0; i < expressao.length(); i++) {

            if (isOperador(expressao.charAt(i))) {
                listaOperadores.add(new Character(expressao.charAt(i)));
            }
        }

        return listaOperadores;
    }

    private boolean isOperador(char caracter) {
        boolean isOperador = false;
        if (caracter == '-' || caracter == '+' || caracter == '/' || caracter == '*') {
            isOperador = true;
        }
        return isOperador;
    }
}

Classe Calculo.java vista no NetBeans
Figura 5: Classe Calculo.java vista no NetBeans

O próximo passo é criar a classe responsável pela interface, será criada uma classe chamada TelaCalculadora.class que terá como classe mãe a classe JFrame, que e responsável pela criação de uma tela em Swing.

Para criar uma classe do tipo JFrame, basta clicar no pacote no qual será criads e clicar em: Novo > Form JFrame.

Tela para criação de um Form JFrame
Figura 6: Tela para criação de um Form JFrame

Abaixo é possível ver a tela recém-criada pronta para edição.

Classe TelaCalculadora.java
Figura 7: Classe TelaCalculadora.java

Para modificar a tela é necessário clicar nos itens da aba paleta e jogar na tela em si.

Aba Paleta
Figura 8: Aba Paleta

Inicialmente é necessário adicionar um “Painel” a nossa tela basta clicar no mesmo na aba “Paleta” e arrastar até a tela do programa.

Painel arrastado para a classe TelaCalculadora.java
Figura 9: Painel arrastado para a classe TelaCalculadora.java

Agora basta direcionar o painel dentro da tela.
O próximo passo é adicionar um objeto do tipo “Painel de Texto”, como é possível ver abaixo:

Adição do item Painel de Texto
Figura 10: Adição do item Painel de Texto

Agora altere o nome da variável do item Painel de texto que fora adicionado para “visorCalculadora”. Para alterar o nome da variável basta clicar com o botão direito em cima do item que se deseja alterar e escolher a opção “Alterar Nome de Variável...”, abaixo é possível o momento em que se está alterando o nome da variável do item.

Alteração do nome de variável
Figura 11: Alteração do nome de variável

Após adicionar o visor, é necessário adicionar os botões Pra adicionar o botão escolha o item “Botão” na aba Paleta.

Adição de um item Botão a tela da calculadora
Figura 12: Adição de um item Botão a tela da calculadora

Agora que o botão foi adicionado é necessário alterar o nome da variável do mesmo, assim como foi feito no item referente ao visor, altere o nome da variável para botaoCE.
Agora também é necessário alterar o texto do botão, Para alterar o texto do item, clique com o botão direito sobre ele e escolha a opção “Editar Texto”.

Alteração do texto contido no botão
Figura 13: Alteração do texto contido no botão

Essa primeira tecla será o botão CE, que será utilizado para limpar o visor.

Imagem do primeiro botão na calculadora
Figura 14: Imagem do primeiro botão na calculadora

Agora é necessário atribuir uma ação ao botão para quando o mesmo for clicado. Para adicionar um evento a um determinado item basta clicar com o botão direito sobre o item e escolher as opções: Eventos > Mouse > mouseClicked.
Logo que for adicionada essa ação, a tela será direcionada para código fonte.

Imagem do código fonte da TelaCalculadora.java
Figura 15: Imagem do código fonte da TelaCalculadora.java

Para voltar à tela de edição gráfica basta clicar no item “Projeto” que fica ao lado do item selecionado “Código-Fonte”.
Agora será necessário seguir esse processo para todos os botões da calculadora.
Abaixo é possível ver como ficará a tela neste exemplo:

Imagem da TelaCalculadora.java após a inserção dos botões
Figura 16: Imagem da TelaCalculadora.java após a inserção dos botões

O próximo passo é fazer com que seja exibido no visor o valor referente à tecla pressionada. Para programar os botões é necessário editar o código-fonte da tela, para isso é preciso clicar no botão Código-Fonte.
Um exemplo de código que faz alteração no visor quando algum botão é apertado pode ser visto abaixo:

Listagem 2: Exemplo de código para alteração do valor do visor.




private void botao3MouseClicked(java.awt.event.MouseEvent evt) {
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "3");    
    }
O trecho de código acima funciona da seguinte maneira. Quando o método acima é chamado, é pego o valor já existente no visor através do método “getText()” contido na variável “visorCalculador ”, logo após é concatenado o número “3”, esse processo é necessário em todos os botões.

Código fonte da classe TelaCalculadora.java
Figura 17: Código fonte da classe TelaCalculadora.java

Abaixo é possível ver o trecho código-fonte da classe TelaCalculadora.

Listagem 3: Código fonte da classe TelaCalculadora.java.


/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package calculadoraswing;

/**
 *
 * @author mago
 */
public class TelaCalculadora extends javax.swing.JFrame {

    /**
     * Creates new form TelaCalculadora
     */
    public TelaCalculadora() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    //
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jScrollPane1 = new javax.swing.JScrollPane();
        visorCalculador = new javax.swing.JTextPane();
        botaoCE = new javax.swing.JButton();
        botao7 = new javax.swing.JButton();
        botao8 = new javax.swing.JButton();
        botao9 = new javax.swing.JButton();
        botao5 = new javax.swing.JButton();
        botao6 = new javax.swing.JButton();
        botao4 = new javax.swing.JButton();
        botao1 = new javax.swing.JButton();
        botao2 = new javax.swing.JButton();
        botao3 = new javax.swing.JButton();
        botao0 = new javax.swing.JButton();
        botaoVezes = new javax.swing.JButton();
        botaoDiv = new javax.swing.JButton();
        botaoMenos = new javax.swing.JButton();
        botaoMais = new javax.swing.JButton();
        botaoIgual = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jScrollPane1.setViewportView(visorCalculador);

        botaoCE.setText("CE");
        botaoCE.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botaoCEMouseClicked(evt);
            }
        });

        botao7.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao7.setText("7");
        botao7.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao7MouseClicked(evt);
            }
        });

        botao8.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao8.setText("8");
        botao8.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao8MouseClicked(evt);
            }
        });

        botao9.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao9.setText("9");
        botao9.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao9MouseClicked(evt);
            }
        });

        botao5.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao5.setText("5");
        botao5.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao5MouseClicked(evt);
            }
        });

        botao6.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao6.setText("6");
        botao6.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao6MouseClicked(evt);
            }
        });

        botao4.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao4.setText("4");
        botao4.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao4MouseClicked(evt);
            }
        });

        botao1.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao1.setText("1");
        botao1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao1MouseClicked(evt);
            }
        });

        botao2.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao2.setText("2");
        botao2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao2MouseClicked(evt);
            }
        });

        botao3.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao3.setText("3");
        botao3.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao3MouseClicked(evt);
            }
        });

        botao0.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botao0.setText("0");
        botao0.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botao0MouseClicked(evt);
            }
        });

        botaoVezes.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botaoVezes.setText("*");
        botaoVezes.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botaoVezesMouseClicked(evt);
            }
        });

        botaoDiv.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botaoDiv.setText("/");
        botaoDiv.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botaoDivMouseClicked(evt);
            }
        });

        botaoMenos.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botaoMenos.setText("-");
        botaoMenos.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botaoMenosMouseClicked(evt);
            }
        });

        botaoMais.setFont(new java.awt.Font("Ubuntu", 0, 24)); // NOI18N
        botaoMais.setText("+");
        botaoMais.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botaoMaisMouseClicked(evt);
            }
        });

        botaoIgual.setText("=");
        botaoIgual.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                botaoIgualMouseClicked(evt);
            }
        });

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 218, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(botaoCE, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addGroup(jPanel1Layout.createSequentialGroup()
                                .addGap(26, 26, 26)
                                .addComponent(botao0, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
                                .addComponent(botao1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(botao2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
                                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(botao7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(botao4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(botao5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(botao8, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel1Layout.createSequentialGroup()
                                .addComponent(botao3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(botaoMais, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addComponent(botaoIgual, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addGroup(jPanel1Layout.createSequentialGroup()
                                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addGroup(jPanel1Layout.createSequentialGroup()
                                        .addComponent(botao6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(botaoMenos, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                                    .addComponent(botaoVezes, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                                        .addComponent(botao9, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(botaoDiv, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                                .addGap(2, 2, 2)))))
                .addContainerGap())
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addGap(44, 44, 44)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(24, 24, 24)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(botaoVezes, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(botaoCE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE, false)
                    .addComponent(botao7, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addComponent(botao8, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addComponent(botao9, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(botaoDiv, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(botao5, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addComponent(botao6, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addComponent(botao4, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addComponent(botaoMenos, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(botao1, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(botao2, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(botao3, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(botaoMais, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(botao0, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(botaoIgual, javax.swing.GroupLayout.PREFERRED_SIZE, 33, javax.swing.GroupLayout.PREFERRED_SIZE)))
        );

        jPanel1Layout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {botao7, botao8, botao9});

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(31, Short.MAX_VALUE))
        );

        pack();
    }//


    private void botaoCEMouseClicked(java.awt.event.MouseEvent evt) {                                    

        visorCalculador.setText("");

    }                                   

    private void botaoVezesMouseClicked(java.awt.event.MouseEvent evt) {                                       
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "*");
    }                                      

    private void botao7MouseClicked(java.awt.event.MouseEvent evt) {                                   
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "7");
    }                                  

    private void botao8MouseClicked(java.awt.event.MouseEvent evt) {                                   
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "8");        // TODO add your handling code here:
    }                                  

    private void botao9MouseClicked(java.awt.event.MouseEvent evt) {                                   
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "9");        // TODO add your handling code here:
    }                                  

    private void botaoDivMouseClicked(java.awt.event.MouseEvent evt) {                                     
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "/");        // TODO add your handling code here:
    }                                    

    private void botao4MouseClicked(java.awt.event.MouseEvent evt) {                                   
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "4");        // TODO add your handling code here:
    }                                  

    private void botao5MouseClicked(java.awt.event.MouseEvent evt) {                                   
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "5");        // TODO add your handling code here:
    }                                  

    private void botao6MouseClicked(java.awt.event.MouseEvent evt) {                                   
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "6");        // TODO add your handling code here:
    }                                  

    private void botaoMenosMouseClicked(java.awt.event.MouseEvent evt) {                                       
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "-");        // TODO add your handling code here:
    }                                      

    private void botao1MouseClicked(java.awt.event.MouseEvent evt) {
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "1");        // TODO add your handling code here:
    }

    private void botao2MouseClicked(java.awt.event.MouseEvent evt) {
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "2");        // TODO add your handling code here:
    }

    private void botao3MouseClicked(java.awt.event.MouseEvent evt) {
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "3");        // TODO add your handling code here:
    }

    private void botaoMaisMouseClicked(java.awt.event.MouseEvent evt) {
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "+");        // TODO add your handling code here:
    }

    private void botao0MouseClicked(java.awt.event.MouseEvent evt) {
        String valor = visorCalculador.getText();
        visorCalculador.setText(valor + "0");        // TODO add your handling code here:
    }

    private void botaoIgualMouseClicked(java.awt.event.MouseEvent evt) {
        String valor = visorCalculador.getText();
        System.out.println(">>>"+valor);
        Calculos calculos = new Calculos();
        String resultado = calculos.calculadora(valor);
       
        visorCalculador.setText(resultado);
// TODO add your handling code here:
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(TelaCalculadora.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(TelaCalculadora.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(TelaCalculadora.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(TelaCalculadora.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //


        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new TelaCalculadora().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify
    private javax.swing.JButton botao0;
    private javax.swing.JButton botao1;
    private javax.swing.JButton botao2;
    private javax.swing.JButton botao3;
    private javax.swing.JButton botao4;
    private javax.swing.JButton botao5;
    private javax.swing.JButton botao6;
    private javax.swing.JButton botao7;
    private javax.swing.JButton botao8;
    private javax.swing.JButton botao9;
    private javax.swing.JButton botaoCE;
    private javax.swing.JButton botaoDiv;
    private javax.swing.JButton botaoIgual;
    private javax.swing.JButton botaoMais;
    private javax.swing.JButton botaoMenos;
    private javax.swing.JButton botaoVezes;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTextPane visorCalculador;
    // End of variables declaration
}


Conclusão

Como foi possível ver ao longo do artigo, a construção de aplicativos utilizando interface gráfica Swing é bem simples quando se utiliza o IDE NetBeans. Uma boa interface gráfica faz toda diferença em qualquer programa, e a utilização de Swing para criação desta interface pode vir a ser muito útil.



Bibliográfia

Brevemente publicado em:

http://www.devmedia.com.br/criacao-de-aplicacoes-em-java-utilizando-swing/26007 - Robson Fernando Gomes (Autor do Blog)

terça-feira, 23 de outubro de 2012

Utilzando o write no linux

Introdução


O principal objetivo deste post é explicar como se utilizar o comando write em um terminal linux.
O comando write tem a função de enviar messagens para outro usuário logado através do terminal.

Para utilizar write é necessário descobrir  onde está logado o ususário que deseja enviar uma mensagem, para isso é necessário utilizar o comando who que demonstra quais os usuários logados.

Sintaxe:

who

Abaixo é possível visualizar a execução do comando who.

Figura 1: Execução do comando who.

Neste exemplo vou enviar uma mensagem para o usuário root logado em pts/4. Para isso é necessário utilizar a seguinte sintaxe:

 write usuario local


Onde:
  •  usuario - Usuário a receber a mensagem.
  • local - Local onde está logado o usuário.


Figura 2: Escolha do usuário a receber a mensagem.

Para exemplificar foi aberta a janela do usuário root ao lado do usuário a enviar mensagens para exibir as mensagens recebidas.


Figura 3: Usuário a ser escolhido.


Figura 4: Janela da pessoa que recebera a mensagem e a que enviará.

Após executar o comando write basta digitar a mensagem que deseja enviar para o usuário e o mesmo recebera como é possível ver na imagem abaixo:

Figura 5: Exibição da mensagem enviada e recebida.

Caso você queira conversar com a pessoa que lhe está enviando a mensagem basta, utilizar o comando write com a mesma.
Abaixo é possível ver a execução do comando write pelo usuário root.

Figura 6: Execução do comando write

Agora basta digitar os comando escrever as mensagens a serem enviadas.


Figura 7: Enviando mensagem.


Conclusão

Como foi possível ver ao longo do post, a utilização do comando write é bem simples e pode vir a ser util quando há mais de usuário logado na mesmo computador.


domingo, 7 de outubro de 2012

Jogar jogos de Playstation 1 no Linux

Introdução
Jogar jogos de PlayStation 1 no linux é bem simples, basta instalar um emulador baixar o jogo ou ROM na internet.


IMPORTANTE

De acordo com a lei federal Nº 9.609 de 19/02/1998, só é permitido o uso legal de uma ROM, se o dono adquirir legalmente o jogo e utilizar a ROM apenas como backup. 
Instalando o emulador
Dentre os varios emuladores existentes vou instalar o pcsx que pode ser adquirido através do comando apt-get ou na internet.
Para instalar o mesmo é necessário seguir alguns passo simples:
Abra o terminal






Figura 1: Terminal aberto
Execute o comando apt-get
No terminal execute o comando:
sudo apt-get install pcsx



Figura 2: Momento da execução do comando apt-get
Figura 3: Momento da instalação


Utilizando o pcsx

Para utilizar o pcsx a partir do terminal basta digitar pcsx ou abrir o terminal e executar o comando pcsx.
 
Abaixo é possível ver a tela inicial do emulador após a inicialização do mesmo.


Figura 4: Tela inicial do emulador pcsx.


Para iniciar um jogo basta clicar no botão RUN CD(Icone de cd) caso o cd esteja no seu leito de cd ou clique em Run ISO CD (Icone de Pasta) e vá até onde está o iso do jogo que você deseja jogar.



Figura 5: Momento no qual é escolhido o backup (iso) do jogo para iniciar.


Figura 6: Jogo em plena execução no emulador pcsx.
Conclusão
Como foi possível ver ao longo da dica a execução do pcsx é um emulador de facíl instalação e utilização.