Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : help [ Archives / Java2D et java3D ] (enit128)

jeudi 30 mars 2006 à 10:18:46 | help

enit128

bonjour à tous,
je veux savoir comment afficher des données qui m'arrivent à partir d'un port serie dans un composant jList en temps réel.
Sachant que j'ai déja fait un programme en java qui permet de récuperer des données à partir d'un port serie.
Merci et bonne journée

jeudi 30 mars 2006 à 10:46:03 | Re : help

tucobouch

La maniere la plus simple est de créer un Vector  (une sorte de tableau dynamique) et d'ajouter au fur a mesure les données reçues dans ce Vector.Pour remettre a jour ton Vector, tu appelles ensuite setListData()

Code :

JList liste=new JList();
Vector<Type_donnee> data=new Vector();
...
//quand je reçois une donnée
data.add(ma_donnnee);

//rafraichi
liste.setListData(data);


Type_donnee (optionnel, que sous Java 5) est le type des donnees que tu reçoit (String,Integer, etc...) Il y a surrement plus propre mais c'est plus cher

Pour de plus amples infos (en anglais), l'indispensable javadoc :
[ Lien ]

vendredi 31 mars 2006 à 09:39:26 | Re : help

enit128

Merci Tucobouch,
mais j'ai rencontré un probleme qui'est le suivant. Le compilateur m'affiche l'erreur suivante "java.lang.ArrayIndexOutOfBoundsException". ce qui apparaisse que le vecteur que j'ai dejas créé possède une capacité insuffisante pour recevoir toutes les trames arrivant du port serie. Donc qu'est-ce que je dois faire?

vendredi 31 mars 2006 à 09:45:54 | Re : help

tucobouch

Normalement un vecteur "grandit" automatiquement quand tu lui ajoute des données. Cette exception se produit normalement quand tu tente d'acceder a un element d'index qui n'est pas dans les bornres du Vector (index negatif ou index superieur ou egal a la taille du Vector).
Quand cette exception est elle produite ?


vendredi 31 mars 2006 à 15:10:39 | Re : help

enit128

Merci tout d'abord tucobouch pour votre attention,
C'est vrais que vous avez dit, que la taille d'un vecteur augmente automatiquement. Mais est-ce que le vecteur que j'ai dejas créé ne possede pas une taille maximale que ne peut pas  etre depasser.
Parceque moi je dois afficher une trame dans un composant de type jList à chaque fois q'elle m'arrive du port série. Qu'est-ce que je dois faire
Cordialement Ahmed,


vendredi 31 mars 2006 à 15:24:38 | Re : help

tucobouch

ça me parait étonnant comme probleme... d'apres la doc il n'y a pas de limite (hormis la memoire)... sinon, essaye de supprimer les trames trop vieilles

samedi 1 avril 2006 à 03:03:16 | Re : help

nomad56

salut, effectivement, un Vector grandit automatiquement.
pour t'aider ce serai bien d'avoir la source ... si c pas possible :
est-on sûr que java.lang.ArrayIndexOutOfBoundsException porte sur le Vector ?
si oui , tu as du faire un accès au Vector ( genre liste.setListData(data); ) alors que celui-ci était vide ou alors ton accès dépasse la taille actuelle du Vector (genre data.elementAt(2) alors que data.capacity()<=2)

si vraiment le problème persiste .. et même s'il est réparé d'ailleur, un try/catch serait bien...


try{
       //rafraichi
        liste.setListData(data);
    }catch(ArrayIndexOutOfBoundsException ex){System.err.println("Erreur dépassement de capacité");}
     catch(Exception ex){System.err.println("Erreur inconnue");}

je précise que je fais ca de tête là, il est donc possible qu'il y ai des petites erreurs dans mon code ...
j'espère avoir pu aider ...



Cette discussion est classé dans : help, port, serie, données, partir


Répondre à ce message

Sujets en rapport avec ce message

Peut-on lire des données à partir d'un port série ? [ par StorMOSC ] Bonjour a tous :)Je voulais savoir si on pouvait lire un flux de données à partir d'un port série. Dans mon cas, c'est pour pouvoir faire +1 a une var Commmunication port serie [ par tiluz ] Bonjour, je suis a la recherche d'un code pour effectuer une communication serie (rs232)QQN peut il m'aider??merci HELP en java, cherche qqn à qui envoyer mon code pour me dépanner, application reliée à une base de données, combobox, requetes ... [ par oxane90 ] alors mon appliest en relation avec une base de données PROGRESS, laconnexion fontionne très bien, j'ai 3 listesdéroulantes (la liste déroulante conti transférer (intégrer) les données à partir d'une base de données Access à un logiciel ta base de données est crée par paradox [ par fary26 ] Bonjour, est ce qu'il y a un utilitaire  uo des etapes qui permet de  transférer (intégrer) les données à partir d'une base de données Access à un log Help : Code pour dialoguer via port com [ par Bouboukick ] Bonjour,J'ai enfin réussi à installer comm3 et rxtx 2 librairies pour la communication via le port com.Maintenant j'aimerais pouvoir les utiliser pour comment remplir jList à partir d'une base de données [ par chaho ] salut je veux remplir une jList à partir d'une base de données quant je selectionne un item d'un jComBobox. j'ai éssayé le code suivant mias ça donne Dessiner un MCD à partir d'une base de données [ par hemma731 ] Bonjour à tous!A partir d'une base de données, je voudrais créer un MCD : on a les entités, les relations et je voudrais dessiner des carrés avec la l


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,203 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.