Accueil > > > DÉFILEMENT HORIZONTAL DE TEXTE DANS UN JTEXTFIELD.
DÉFILEMENT HORIZONTAL DE TEXTE DANS UN JTEXTFIELD.
Information sur la source
Description
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();
}
}
Conclusion
C'est juste pour aider le mec ni + ni -.
Historique
- 02 mai 2006 08:41:48 :
- Ajouter une capture
Sources de la même categorie
Commentaires et avis
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ê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
|
Derniers Blogs
TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|