si avete ragione scusate vi posto sotto la classe:
codice:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
/**
*
* @author Nicholas
*/
class MexScorrevole {
static JLabel mex;
static Timer timer;
static JPanel pannello=new JPanel();
static int posX=0;
static int posY=0;
static int larghezza=0;
static int altezza=0;
static int off=3;
static int panelW=0;
static int panelH=0;
static int x1 = 0;
static int x2 = 0;
static int y1 = 0;
static int y2 = 0;
static int labelW=0;
static int labelH=0;
public static void disegnaMex(String messaggio,int vel,int pX,int pY,int larg,int alt,int foreGround,int align,String styleFont,int sizeFont,int bold){
pannello.setLayout(null);
//dimensioni e posizione jpanel
pannello.setBounds(pX,pY,larg,alt);
//pannello.setOpaque(false);
pannello.setBackground(new Color(0,0,0,0));
pannello.setOpaque(true);
//pannello.setBackground(Color.black);
Font font = null;
if(bold!=0){
font=new Font(styleFont,Font.BOLD,sizeFont);
}
else if(bold==0){
font=new Font(styleFont,Font.PLAIN,sizeFont);
}
if(align==2){
mex = new JLabel(messaggio,JLabel.CENTER);
}
else{
mex = new JLabel(messaggio);
}
//setto font
mex.setFont(font);
int b=(foreGround>>16)&255;
int g=(foreGround>>8)&255;
int r=(foreGround)&255;
Color colorText=new Color(r,g,b);
//setto colore foreground
mex.setForeground(colorText);
//setto colore background trasparente
mex.setBackground(new Color(0,0,0,0));
//abilito opacita
mex.setOpaque(true);
//prendo dimensioni label
mex.setSize(mex.getPreferredSize());
//calcolo meta larghezza pannello
panelW=pannello.getWidth()/2;
//calcolo meta altezza pannello
panelH=pannello.getHeight()/2;
//calcolo meta larghezza label
labelW=mex.getWidth()/2;
//calcolo meta altezza label
labelH=mex.getHeight()/2;
//calcolo posX
posX=panelW-labelW;
//calcolo posY
posY=panelH-labelH;
vel=vel*10;
timer = new Timer (vel,new ActionListener (){
public void actionPerformed (ActionEvent e){
posX=posX-off;
if(posX<=-mex.getWidth()){
posX=pannello.getWidth();
}
mex.setLocation(posX,20);
pannello.repaint();
}
});
timer.start ();
pannello.add (mex);
MyTimerTask.framePrincipale.add(pannello);
}
}