Jogos em Java ME

18 agosto 2009 0 comentários
Atendendo a pedidos, vamos postar hoje alguns protótipos de games afim de levar aos desenvolvedores, que estudam essa área, um pouco mais de conhecimento e quem sabe fazer um game bem bacana e postar aqui no javamovel.


Faça o download dos projetos aqui.

Links:
http://pt.wikibooks.org/wiki/J2ME/Li%C3%A7%C3%B5es/GameCanvas
http://wiki.forum.nokia.com/index.php/Como_desenvolver_um_jogo_em_Java_ME
http://www.symbianresources.com/tutorials/javame.php#overview
http://www.devmedia.com.br/articles/viewcomp_forprint.asp?comp=2563

Ganhadores das assinaturas Java Magazine Digital

2 comentários
Olá! Precisamos que os seguintes leitores entrem em contato conosco através do e-mail: java2mobile@gmail.com

Leitores:
1. Danilo Mikucki
2. Marcelo Quintana
3. Antonio de Lemos
4. Rafael Viana
5. Guilherme Ferrari
6. Robison Cris Brito

O e-mail deve conter os seguintes dados:
* Nome completo;
* Telefone para contato;
* e-mail.

Quando os sorteados enviarem os e-mails nós repassaremos para o pessoal da devmedia entrar em contato e confirmar a assinatura digital da revista Java Magazine, gratuitamente.
Em breve sortearemos mais 4 assinaturas da revista Java Magazine Digital. Os interessados entrem em contato.


Att, javamovel

Utilizando componentes com LWUIT

12 agosto 2009 1 comentários

Olá no post de LWUIT de hoje vamos demostrar a utilização de alguns componentes, como Label, ComboBox, Button, Image.

Para detalhes iniciais veja os posts anteriores sobre LWUIT.
HelloWorld com LWUIT
Utilizando tema em LWUIT

Para criar os componentes que iremos demostrar é necessário antes criar um projeto, adicionar o jar do LWUIT nos recursos do projeto e criar um form para colocar os componentes. Para melhor visualizar seria legal também carregar um tema. (Isto tudo é ensinado nos 2 posts referenciados acima)

Veja como criar os componentes:

Inserir um texto na tela -> Label
Label label = new Label("Texto");

Inserir uma imagem na tela -> Image + Label
Image imagem = Image.createImage("imagem.png");
Label ImagemLabel = new Label(imagem);

Inserir uma imagem com um texto em baixo: Image + Label
Image imagem = Image.createImage("imagem.png");
Label textoBaixo = new Label(imagem);
textBaixo.setText("Texto");
textBaixo.setTextPosition(Component.BOTTOM);
//seta a posição que o texto estará em relação a imagem

Inserir um botão com um texto: Button
Button button = new Button("Botao");

Inserir um botão com imagem: Button + Image
Image imagem = Image.createImage("imagem.png");
Button ImagemButton = new Button(imagem);

Inserir um campo de texto editável: TextField
TextFiel tfNome = new TextField(15);
//o argumento é a quantidade de colunas

Inserir uma lista de escolhas recolhível: ComboBox
String[] dias = new String[7];
dias[0] = "Domingo";
dias[1] = "Segunda";
dias[2] = "Terca";
dias[3] = "Quarta";
dias[4] = "Quinta";
dias[5] = "Sexta";
dias[6] = "Sabado";
ComboBox cbDia = new ComboBox(dias);

Para adicionar qualquer um dos componentes criados faça o seguinte
nomeDoForm.addComponent(nomeDoComponente);

Abaixo está listado um código completo de uma aplicação que possui um tema, um form com todos estes componentes e um comando de sair.
import com.sun.lwuit.Button;
import com.sun.lwuit.ComboBox;
import com.sun.lwuit.Command;
import com.sun.lwuit.Component;
import com.sun.lwuit.Display;
import com.sun.lwuit.Form;
import com.sun.lwuit.Image;
import com.sun.lwuit.Label;
import com.sun.lwuit.TextField;
import com.sun.lwuit.events.ActionEvent;
import com.sun.lwuit.events.ActionListener;
import com.sun.lwuit.plaf.UIManager;
import com.sun.lwuit.util.Resources;
import java.io.IOException;
import javax.microedition.midlet.*;

public class MidletDesenhando extends MIDlet implements ActionListener{
Form f;
Image image, imagem;
Label label, pictureLabel, lNome;
Button button;
Command exitCommand;
Button pictureButton;
TextField tfNome;
ComboBox cbDia;

public void startApp() {
Display.init(this);

// TEMA
try {
Resources r = Resources.open("/imagens/javaTheme.res");
UIManager.getInstance().setThemeProps(r.getTheme(r.getThemeResourceNames()[0]));
} catch (IOException ioe) {
System.out.println("Não foi possível carregar o tema.");
}

//cria um form
f = new Form("Testando Componentes");

//comando sair
exitCommand = new Command("Sair");
f.addCommand(exitCommand);
f.setCommandListener(this);

// TEXTO
label = new Label("Texto");
f.addComponent(label);

try {
// IMAGEM
image = Image.createImage("/imagens/calculadora.png");
pictureLabel = new Label(image);
f.addComponent(pictureLabel);

// TEXTO EM BAIXO DA IMAGEM
Label textBaixo = new Label(image);
textBaixo.setText("Texto");
textBaixo.setTextPosition(Component.BOTTOM);
f.addComponent(textBaixo);

} catch (IOException ex) {
ex.printStackTrace();
}

// BOTÃO COM TEXTO
button = new Button("Botao");
f.addComponent(button);
try {
// BOTÃO COM IMAGEM
imagem = Image.createImage("/imagens/musica.png");
pictureButton = new Button(imagem);
f.addComponent(pictureButton);
pictureButton.addActionListener(this);
} catch (IOException ex) {
ex.printStackTrace();
}

//Label e textField
lNome = new Label("Nome:");
tfNome = new TextField(15);
f.addComponent(lNome);
f.addComponent(tfNome);

//ComboBox
String[] dias = new String[7];
dias[0] = "Domingo";
dias[1] = "Segunda";
dias[2] = "Terca";
dias[3] = "Quarta";
dias[4] = "Quinta";
dias[5] = "Sexta";
dias[6] = "Sabado";
cbDia = new ComboBox(dias);
f.addComponent(cbDia);

//mostra o form
f.show();
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
}

public void actionPerformed(ActionEvent e) {
if(e.getSource() == exitCommand){
notifyDestroyed(); //notifica a destruíção da aplicação ao gerenciador
destroyApp(true); //destroí a aplicação
}
}
}


Veja uma imagem do resultado da aplicação: