Bonsoir
J'ai un fichier .txt qui contient des coordonnées en double
j'ai lus les coordonnées mais je peux les afficher sur un JLabel en tent qu'ovales
veuillez m'aider Svp et merci d'avance
Bonsoir
J'ai un fichier .txt qui contient des coordonnées en double
j'ai lus les coordonnées mais je peux les afficher sur un JLabel en tent qu'ovales
veuillez m'aider Svp et merci d'avance
Responsable Java de Developpez.com (Twitter et Facebook)
Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
--------
Architecte Solution
LinkedIn : https://www.linkedin.com/in/nicolascaudard/
je veut afficher des ovales (Graphics) sur un Jlabel dans les coordoonées qui sont dans le fichier txt
dans le fichier j'ai des positions X et Y ( qui sont les coordoonées des villes - probleme du TSP -)
il y a un exemple dans les pieces jointes
dans cet example j'ai utilisé la méthode de MouseClicked
Salut,
C'est plutôt un JPanel qu'il te faudrait. Tu te fais une classe qui étend JPanel et qui redéfinit paintComponent :
pour dessiner un oval (juste le contour) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public class CarteDesVilles extends JPanel { protected void paintComponent(Graphics graphics) { super.paintComponent(graphics); // ici tu vas mettre des ordres de dessin dans le contexte graphique du JPanel } }
ou pour un ovale plein :
Code : Sélectionner tout - Visualiser dans une fenêtre à part graphics.drawOval(x,y, largeur, hauteur);
Il te suffit donc d'avoir un attribut avec la liste des points dans la classe, et dans paintComponent de boucler sur ces points pour les dessiner.
Code : Sélectionner tout - Visualiser dans une fenêtre à part graphics.fillOval(x,y, largeur, hauteur);
Plus de détails sur le dessin Java2D dans ce tutoriel.
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
Merci pour votre reponse joel.drigo
j'ai fait tout ça ,le probleme c'est que je doit récupérer les coordonnées d'un fichier txt mais j'ai pas trouvé comment !
Je ne comprends pas : tu dis avoir "lus les coordonnées"... donc quel est exactement ton problème ? Tu peux montrer ton code déjà fait ?
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
le probleme est d'afficher les ovales dans ces coordonnées
Voici le fichier txt
j'ai lu le fichier parJ'ai récupéré les X par un Vector x et les Y par un Vector y
Code : Sélectionner tout - Visualiser dans une fenêtre à part Scanner sc = new Scanner(new File("djibouti.txt"));
J'ai crée une classe Ville qui hérite de JLabel et a comme attributs un Point P , Status visitée ou pas
maintenant je veux afficher les ville dans JLabel dans les coordonnées X et Y de chacune comme la photo suivante
Salut,
Déjà, n'utilise pas de Vector, mais des ArrayList à la place. Et oublie les JLabel, je t'ai dis d'utiliser un JPanel. Ensuite, au lieu de 2 listes de int, fais-en qu'une seule, de Ville, une classe dédiée :
Et ensuite tu mets cette liste dans la classe comme je te l'ai dit, et tu la parcours pour afficher les infos comme je te l'ai dit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 public class Ville { private int x, private int y; private String nom; public Ville(String nom, int x, int y) { this.nom=nom; this.x=x; this.y=y; } public int getX() { return x; } public int getY() { return y; } public String getNom() { return nom; } }
Tu ajoutes ce JPanel à ta fenêtre, au centre, et c'est bon.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 public class CarteDesVilles extends JPanel { private List<Ville> villes; public CarteDesVilles(List<Ville> villes) { this.villes=villes; } protected void paintComponent(Graphics graphics) { super.paintComponent(graphics); for(Ville ville : villes) { graphics.fillOval( ville.getX()-3, ville.getY()-3, 6, 6); // affiche un point graphics.drawString( ville.getNom(), ville.getX()-3, ville.getY()+20); // affiche le nom de la ville } } }
L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
Nouveau sur le forum ? Consultez Les Règles du Club.
ah j volu dire un JPanel hh
Merci joel.drigo pour votre aide
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager