CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[JAVA] problème boite de dialogue

ArsenicBottle
ArsenicBottle
Niveau 6
09 novembre 2009 à 18:57:32

bonjour,
j'avais un exo à faire chez moi qu'on a commencé en cours, et je n'arrive pas à finir :(

Mon problème est le suivant :
J'ai un Frame qui ouvre une boite de dialogue quand on clique sur un bouton. Ca ca marche.
Ensuite, cette boite de dialogue qui apparait demande à l'utilisateur de rentrer un nom, prénom et adresse. Ca ca va^^
Par contre, quand je clique sur ok, ca doit revenir auprès de la première frame et ajouter les données à un MapTree.

Bon, là j'ai un problème pour faire communiquer les deux boites.
En cours on a commencer à écrire ca : http://pastebin.com/m578feb06

donc ma question ce serait : est-il possible de faire changer la valeur du "ok" quand on clique sur le bouton, si oui comment ?

Sachant que "buttonOkActionPerformed" c'est évidement l'action qui se produit quand on appuis sur ok.
Et la fonction shoDialog est appelée par la Frame initiale comme ca :

private void
buttonAjout_actionPerformed(java.awt.event.ActionE
vent evt) {
Personne p = new Personne();
this.dlg = new AjoutDlg(new java.awt.Frame(),false);
this.dlg.showDialog(p, false);
}

et personne c'est les info qu'on ajoutera à la MapTree.

Bien, je suppose que ca reste difficile de comprendre ce que je dis sans avoir le code complet, mais je vais pas vous assomer avec toutes mes classes....

merci si vous pouvez m'aider

godrik
godrik
Niveau 30
09 novembre 2009 à 19:01:53

Je n'ai pas bien compris ton probleme. Que veut tu dire par "est-il possible de faire changer la valeur du "ok" quand on clique sur le bouton, si oui comment ? "

Si j'ai bien compris, lorsque l'utilisateur clique sur ok il faut:
Creer un objet Personne.
Passer cet objet a l'objet qui gere la collection d'objet/la MapTree.
Fermer la boite de dialogue.

ArsenicBottle
ArsenicBottle
Niveau 6
09 novembre 2009 à 19:13:56

en fait une instance d'objet de classe personne est transmise à showDialog lors de l'appel.

Pour l'instant cette personne a 3 variables de type String qui sont initialisé à "". Dans la suite, on pourra passer une instance de personne qui contiendra des données non nulle. Donc l'obje est déjà accessible depuis showDialog, inutile de le créer donc.

La suite c'est bien ca :
Passer cet objet a l'objet qui gere la collection d'objet/la MapTree.
Fermer la boite de dialogue.

En fait , là ou je ne comprends pas c'est la remarque de mon prof :
//le bouton ok doit prevenir agendaCons que l'objet a été modifié.

est-ce que je pourrait introduire juste après ce com quelquechose qui attend l'appui sur le bouton "OK", ou quelque chose dans ce style ?

godrik
godrik
Niveau 30
09 novembre 2009 à 19:45:40

Je pense qeut on prof te demande de faire une fonction d'ajout mais aussi de mise a jour d'un objet.

ArsenicBottle
ArsenicBottle
Niveau 6
09 novembre 2009 à 19:52:19

en fait... ce que je veut faire (si c'est possible) :

- début de showDialog
- j'attends l'évènement "clique sur OK"
- mise à jour de la variable "ok" dans la fonciton showDialog
- poursuite et fin de la fonction showDialog

c'est possible un schéma de ce type ?

godrik
godrik
Niveau 30
09 novembre 2009 à 19:55:19

dans les systeme graphique a la java, tu ne te met jamais en attente de quelquechose, les fenetres reagissent par evenement.

Je ne comprends pas ce qui te pose probleme.

ArsenicBottle
ArsenicBottle
Niveau 6
09 novembre 2009 à 20:58:27

mouai...
du coup cela veut dire que :
- soit je passe le ok en paramètre
- soit ... ba j'ai pas trop d'autres solutions ...

dnob700
dnob700
Niveau 10
10 novembre 2009 à 10:27:22

"dans les systeme graphique a la java, tu ne te met jamais en attente de quelquechose, les fenetres reagissent par evenement. "

Je ne connais pas java, mais sous visual basic (et .NET en général) les boite de dialogue peuvent être modale, auquel cas l'appel du type dialog.show() ne rend pas la main tant que la boite est ouverte et la valeur de fermeture de la boite est renvoyé par cet appel. Si elle ne sont pas modal, alors oui, elles passent par le système de gestion d'événements. Mais comme on a couramment besoin d'une boite qui bloque le reste de l'application c'est fourni directement par le framework. Il y a peut-être la même chose en java.

ArsenicBottle
ArsenicBottle
Niveau 6
10 novembre 2009 à 13:08:38

ah, mais effectivement j'ai une valeur de boolean à donné à ma fonction lorsque j'ouvre la fenetre... et ca correspond effectivement au fait que la fenetre est modal ou non...

merci pour la piste, je vais essayer de voir ca.

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment