JavaTv Digital

0 respostas
V

Ola pessoal, estou tentando rodar uma aplicação de tv digital, como codigo parece estar td ok nao a eros, mas quando adiciono ele no XletView para sua execusao nao acontece nada, oq estou deixando de faser vai o codigo a baixo

import java.awt.Color;

import java.awt.Font;

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;
import org.havi.ui.HDefaultTextLayoutManager;

import org.havi.ui.HScene;

import org.havi.ui.HSceneFactory;

import org.havi.ui.HScreen;

import org.havi.ui.HStaticText;
import xjavax.tv.xlet.Xlet;

import xjavax.tv.xlet.XletContext;

import xjavax.tv.xlet.XletStateChangeException;
public class ExemploXlet implements Xlet, KeyListener {

private XletContext context;

private HScene scene;

private HStaticText label1, label2;
public ExemploXlet() {
    
    /* Método vazio */
    
}

public void initXlet(XletContext xletContext)
throws XletStateChangeException {
    
    /* guardando o contexto... */
    this.context = xletContext;
    
}

public void startXlet()
throws XletStateChangeException {
    
    HSceneFactory hsceneFactory = HSceneFactory.getInstance();
    
    scene = hsceneFactory.getFullScreenScene(HScreen.getDefaultHScreen().
    getDefaultHGraphicsDevice());
    scene.setSize(640, 480);
    
    scene.setLayout(null);
    scene.addKeyListener(this); //o próprio Xlet é o listener
    
    label1 = new HStaticText("Al\u00F4 MundoJava!", 35, 45, 660, 50,
    new Font("Tiresias", 1, 36),
    Color.red, Color.white,
    new HDefaultTextLayoutManager());
    label2 = new HStaticText("Controle Remoto", 100, 135, 500, 30,
    new Font("Tiresias", 1, 36),
    Color.red, Color.white,
    new HDefaultTextLayoutManager());
    
    scene.add(label1);
    scene.add(label2);
    scene.setVisible(true);
    scene.requestFocus();
    
}


public void pauseXlet() {
    
    /* Método vazio */
    
}

public void destroyXlet(boolean unconditional)
throws XletStateChangeException {
    
    if (scene!=null) {
        scene.setVisible(false);
        scene.removeAll();
        scene = null;
    }
    context.notifyDestroyed();
    
}

/* Método de java.awt.event.KeyListener */
public void keyTyped(KeyEvent keyevent) {
    /* Método vazio */
}

/* Método de java.awt.event.KeyListener */
public void keyReleased(KeyEvent keyevent) {
    /* Método vazio */
}

/* Método de java.awt.event.KeyListener */
public void keyPressed(KeyEvent e) {
    String mensagem = "";
    int codigo = e.getKeyCode();
             /*
              * 403 - vermelho
              * 404 - verde
              * 405 - amarelo
              * 406 - azul
              *
              * 27 - exit
              * * (asterisco) - 151
              * # (grade) - 520
              *
              * seta para cima - 38
              * seta para baixo - 40
              * seta para esquerda - 37
              * seta para direita - 39
              * ok - 10
              *
              * números - número + 48 (ex. 2 é 50)
              *
              */
    
    switch (codigo) {
        case 48:
        case 49:
        case 50:
        case 51:
        case 52:
        case 53:
        case 54:
        case 55:
        case 56:
        case 57:
            mensagem += "Bot\u00E3o num\u00E9rico: "+(codigo-48);
            break;
        case 403:
            mensagem += "Bot\u00E3o Vermelho";
            break;
        case 404:
            mensagem += "Bot\u00E3o Verde";
            break;
        case 405:
            mensagem += "Bot\u00E3o Amarelo";
            break;
        case 406:
            mensagem += "Bot\u00E3o Azul";
            break;
        case 27:
            mensagem += "Bot\u00E3o EXIT";
            break;
        case 10:
            mensagem += "Bot\u00E3o OK";
            break;
        case 151:
            mensagem += "Bot\u00E3o Asterisco (*)";
            break;
        case 520:
            mensagem += "Bot\u00E3o grade (#)";
            break;
        case 38:
            mensagem += "Seta para cima";
            break;
        case 40:
            mensagem += "Seta para baixo";
            break;
        case 37:
            mensagem += "Seta para esquerda";
            break;
        case 39:
            mensagem += "Seta para direita";
            break;
        default:
            mensagem += "Al\u00F4 MundoJava!";
    }
    
    label2 = new HStaticText(mensagem, 100, 135, 500, 30,
    new Font("Tiresias", 1, 36),
    Color.blue, Color.white,
    new HDefaultTextLayoutManager());
    
    scene.removeAll();
    scene.add(label1);
    scene.add(label2);
    label2.repaint();
    scene.repaint();
    
}

}

Criado 14 de janeiro de 2008
Respostas 0
Participantes 1