begin process at 2010 02 10 00:18:12
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > DÉFILEMENT HORIZONTAL DE TEXTE DANS UN JTEXTFIELD.

DÉFILEMENT HORIZONTAL DE TEXTE DANS UN JTEXTFIELD.


 Information sur la source

Note :
Aucune note
Catégorie :Divers Classé sous :texte, défilement, jtextfield Niveau :Débutant Date de création :02/05/2006 Date de mise à jour :02/05/2006 08:41:48 Vu / téléchargé :7 588 / 561

Auteur : davidauche

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Suite à une demande sur le chat, voici une simple solution pour défiler de texte Horizontalement dans un JTextField.
La solution n’est pas la meilleure peut être, mais elle fonctionne ;). Elle utilise un thread avec sleep + interface persol.
Dsl pour les commentaires, pas beaucoup 2 temps cette période et c’est très vite fait.
J’espère qu’elle répondre à ses besoins et pourra finir sa machine à café :p.
Bn courage.

Source

  • /**
  • * Classe : Animation.java
  • * author : davidauche
  • * Date : 2-05-2006
  • **/
  • public class Animation extends Thread {
  • private MyInterface myInterface = null;
  • private String txtAfficher="";
  • private String buf="";
  • private int vitesse = 400;
  • private int counter=0;
  • /**
  • * Constructeurs
  • */
  • Animation (){}
  • Animation(String text){
  • this.txtAfficher = text;
  • }
  • /**
  • * addMyListener
  • **/
  • public void addMyListener(MyInterface listener){
  • this.myInterface = listener;
  • }
  • /**
  • * run
  • **/
  • public void run() {
  • while (true) {
  • try {
  • Thread.sleep(vitesse); // faire une pause au thread.
  • }catch (InterruptedException e) {};
  • if(counter==txtAfficher.length() ) counter =0;
  • counter += 1;
  • buf = txtAfficher.substring(counter) + " - " + txtAfficher.substring(0,counter) ;
  • this.afficher(buf);
  • }
  • }
  • /**
  • * afficher : afficher le texte dans JTextField via notre interface.
  • **/
  • public void afficher(String text){
  • myInterface.afficherText("Voila un test : " + text );
  • }
  • /**
  • * setTextAfficher : changer le texte à afficher.
  • **/
  • public void setTextAfficher(String text){
  • this.txtAfficher = text;
  • }
  • /**
  • * setVitesse : changer la vitesse de défilement.
  • * En millisecond, c'est la valeur donnée à sleep d'un Thread
  • * pour faire une pause.
  • **/
  • public void setVitesse(int vitesse){
  • this.vitesse = vitesse;
  • }
  • /**
  • * reset : counter = 0. recommencer le défilement.
  • **/
  • public void reset(){
  • this.counter = 0;
  • afficher(this.txtAfficher);
  • }
  • }
  • /*###########################################################*/
  • /**
  • * MyInterface.java
  • * Une seule méthode : afficherText
  • *
  • * author : davidauche
  • * Date : 02-05-2006
  • **/
  • public interface MyInterface {
  • public void afficherText(String text);
  • }
  • /*###########################################################*/
  • /**
  • * Classe Defilement.java
  • * author : davidauche
  • * Date : 02-05-2006
  • **/
  • import javax.swing.*;
  • import java.awt.*;
  • import java.awt.event.*;
  • public class Defilement extends JFrame implements MyInterface {
  • private JTextField txtField;
  • private JButton btnStart, btnPause, btnReset;
  • private Animation animation= new Animation("Défilement Horizontal de texte dans un JTextField.");
  • /**
  • * Constructeur
  • **/
  • public Defilement(){
  • super ("Défilement Horizontal de texte dans un JTextField");
  • setSize(450,100);
  • txtField = new JTextField();
  • btnStart = new JButton("Start");
  • btnPause = new JButton("Pause");
  • btnReset = new JButton("Reset");
  • animation.addMyListener(this);
  • animation.setVitesse(300); // modifier la vitesse.
  • animation.start();
  • /* boutton Strat */
  • btnStart.addActionListener(new ActionListener(){
  • public void actionPerformed(ActionEvent e) {
  • animation.resume();
  • }
  • });
  • /* boutton Pause */
  • btnPause.addActionListener(new ActionListener(){
  • public void actionPerformed(ActionEvent e) {
  • animation.suspend();
  • }
  • });
  • /* boutton Reset */
  • btnReset.addActionListener(new ActionListener(){
  • public void actionPerformed(ActionEvent e) {
  • animation.reset();
  • }
  • });
  • txtField.setFont(new Font("Arial",Font.BOLD,13)) ;
  • txtField.setForeground(Color.RED);
  • /* ajouter les composants */
  • this.setLayout(new GridLayout(2,0));
  • JPanel contBtn = new JPanel();
  • contBtn.setLayout(new GridLayout(0,3));
  • contBtn.add(btnStart);
  • contBtn.add(btnPause);
  • contBtn.add(btnReset);
  • this.getContentPane().add(txtField);
  • this.getContentPane().add(contBtn);
  • setVisible(true);
  • }
  • /**
  • * methode afficherText de notre interface
  • **/
  • public void afficherText(String text){
  • txtField.setText(text);
  • }
  • /**
  • * le main pour les tests
  • **/
  • public static void main (String Arg[]){
  • Defilement def = new Defilement();
  • }
  • }
/**
 * Classe : Animation.java
 * author : davidauche
 * Date   : 2-05-2006   
 **/
 
public class Animation extends Thread {
	private MyInterface myInterface = null;	
	private String txtAfficher="";
	private String buf="";
	private int vitesse = 400;
	private int counter=0;
	
	
	/**
	 * Constructeurs 
	 */
	 
	Animation (){}
	
	Animation(String text){
		this.txtAfficher = text;
	}
	
	
	/**
	 * addMyListener
	 **/
	
	public void addMyListener(MyInterface listener){ 
      	this.myInterface = listener;   	
    }
   	
   	
   	/**
   	 * run 
   	 **/
   	
    public void run() { 
        while (true) {
            try {
            	Thread.sleep(vitesse); // faire une pause au thread.
            }catch (InterruptedException e) {};
            
            if(counter==txtAfficher.length() ) counter =0;
             counter += 1;
             
            buf = txtAfficher.substring(counter) + "  -  " + txtAfficher.substring(0,counter) ;
            this.afficher(buf);
        }
    }
   	
   	
   	/**
   	 * afficher : afficher le texte dans JTextField via notre interface.
   	 **/
   	 
   	public void afficher(String text){
   		myInterface.afficherText("Voila un test :  " + text );
   	}
   	
   	
   	/**
   	 * setTextAfficher : changer le texte à afficher. 
   	 **/
   	 
   	public void setTextAfficher(String text){
   		this.txtAfficher = text;
   	}
   	
   	/** 
   	 *	setVitesse : changer la vitesse de défilement. 
   	 *				 En millisecond, c'est la valeur donnée à sleep d'un Thread
   	 *				 pour faire une pause.
   	 **/   	
   	
   	public void setVitesse(int vitesse){
   		this.vitesse = vitesse;
   	}
   	
   	/**
   	 * reset : counter = 0. recommencer le défilement.
   	 **/
   	
   	public void reset(){
   		this.counter = 0;
   		afficher(this.txtAfficher);
   	} 
   	 
}

/*###########################################################*/

/** 
 * MyInterface.java
 * Une seule méthode : afficherText
 * 
 * author : davidauche
 * Date   : 02-05-2006
 **/
 
public interface MyInterface {
	public void afficherText(String text);
}

/*###########################################################*/

/**
 * Classe Defilement.java
 * author : davidauche
 * Date   : 02-05-2006
 **/

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

public class Defilement extends JFrame implements MyInterface {	

	private JTextField txtField;
	private JButton btnStart, btnPause, btnReset;	
	private Animation animation= new Animation("Défilement Horizontal de texte dans un JTextField.");	
	
	/** 
	 * Constructeur 
	 **/
	public Defilement(){
		super ("Défilement Horizontal de texte dans un JTextField");
		setSize(450,100);

      	txtField = new JTextField();      	
      	btnStart = new JButton("Start");
      	btnPause = new JButton("Pause");
      	btnReset = new JButton("Reset");
      	
      	animation.addMyListener(this);       	
      	     	
		animation.setVitesse(300); // modifier la vitesse.
		
      	animation.start();
      	
      	/* boutton Strat */
      	btnStart.addActionListener(new ActionListener(){  
           public void actionPerformed(ActionEvent e) {               
              	animation.resume();             
              }
         });
        
        /* boutton Pause */ 
        btnPause.addActionListener(new ActionListener(){  
           public void actionPerformed(ActionEvent e) {  
              	animation.suspend();             
              }
         });
        
        /* boutton Reset */ 
        btnReset.addActionListener(new ActionListener(){  
           public void actionPerformed(ActionEvent e) {               
              	animation.reset();             
              }
         });
         
        txtField.setFont(new Font("Arial",Font.BOLD,13)) ;
        txtField.setForeground(Color.RED);
        
        /* ajouter les composants */ 
      	this.setLayout(new GridLayout(2,0));      	     	
      	JPanel contBtn = new JPanel();
      	contBtn.setLayout(new GridLayout(0,3));
      	contBtn.add(btnStart);
      	contBtn.add(btnPause);
      	contBtn.add(btnReset);
      	
      	this.getContentPane().add(txtField); 
      	this.getContentPane().add(contBtn);
      	
      	setVisible(true);		
	}
	
	
	/**
	 * methode afficherText de notre interface
	 **/
	  
	public void afficherText(String text){
		txtField.setText(text);
	}
		
	
	/**
	 * le main pour les tests
	 **/
	public static void main (String Arg[]){
		Defilement def = new Defilement();			
	}
}

 Conclusion

C'est juste pour aider le mec ni + ni -.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

02 mai 2006 08:41:48 :
Ajouter une capture

 Sources de la même categorie

Source avec Zip Source avec une capture TRADUCTEUR FRANÇAIS --> NERLANDAIS par edouard333
Source avec Zip IA POUR DISCUTER par edouard333
Source avec Zip Source avec une capture JSUBTITLE1.0 par darrylsite
Source avec Zip COMPILATEUR PASCAL par youma85
Source avec Zip CONTENEUR DE COMPOSANT HETEROGENES par mad_charif

 Sources en rapport avec celle ci

TEXTE AVEC OMBRE par 2mohamed2
JLABELIMAGE : GESTION D'UNE IMAGE EN ARRIÈRE-PLAN par bob22mael
Source avec Zip Source avec une capture DKSWORDART : UN EDITEUR DE WORDART PERSONNALISÉ EN JAVA par DARKSIDIOUS
Source avec Zip Source avec une capture PROGRAMME COMPLET D'AIDE À L'APPRENTISSAGE DE TEXTE par cali70
BLOCNOTE TEXTAREA par jchiaram

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

texte trop long dans Jtextfield et JTextArea [ par criche ] Quand j'affecte un texte très long dans une JtextField ou une JTextArea, c'est la fin de mon texte qui est visible dans ces zones (même si dans le cas getText = probleme !!! [ par niko29940242 ] salut all, j'ai un pti probleme : j'utilise une petite interface graphique avec des entrées de texte utilisateur :public class test { JTextField n Longueur texte dans JTextField [ par niklette ] Bonjour,J'ai parcour le forum et je n'arrive pas a trouver un sujet sur la question suivante;Comment forcer la longueur maximum d'une chaine dans un J Curseur [ par manonfire ] Bonjour tt le monde !J'ai un jtextfield sur une fen&#234;tre principale et un bouton "ok".+J'ai un JDialog qui s'ouvre en cliquant sur le bouton "ok". aligner le texte d'1 JTextField sur la droite [ par alonsyl ] bonjour,je n'arrive pas a aligner le text de mon JTextField sur la droite du formulaire. voici ce que j'ai tente pour le moment :JTextField monTexte = JTree + JTextfield [ par DeNeBj ] Bonjour, Voila j'ai creé une arborescence en java avec un JTree( defaultmodel ...) Mais voila j'aimerais mettre des boutons ou des textfields aprés le JTextField [ par d3dzied ] slt, vous pouvez m'aider si en lire le contenu d'un champ texte en utilise le commande suivantString a;a = <font color="#0000c0" siz Pb rafraichissement JTextField [ par colo ] Bonjour,Voila mon Pb : dans mon interface, il y a un JTextField contenant un texte quelconque. Lorsque je clique sur un bouton je voudrais que le text FocusListener [ par blackcat ] Slt,J'utilise un focus listener pour pouvoir sélectionner tous le texte contenu dans les JTextField lorsqu'il sont actif en faisant :public void focus Comment masquer texte dans JTextfield [ par slyHDI ] bonjour,Je souhaiterais faire un truc tout con mais j'arrive pas . En fait j'ai une page de log dans une appli, je voudrais juste que dans le JTextfie


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales