Mon professeur a affecté un projet où une simulation est exécutée via une interface graphique. Pour l'éditer, nous devons créer un élément de menu "Nouveau". Nous n'avons pas appris comment obtenir des données à partir d'une interface graphique, et notre livre ne le couvre pas du tout. Ce que j'essaie de faire, c'est quand la commande "New" est frappée, le focus est déplacé vers l'invite CMD, où System.out. recommence à travailler et invite l'utilisateur à entrer. Cependant, lorsque j'essaie d'implémenter ceci, mon programme se bloque. Que puis-je faire pour résoudre ce problème?Passer de l'interface graphique à l'invite de commandes en Java?
Répondre
Il ne semble pas que vous gardiez la référence à votre interface graphique nouvellement créée.Aussi loin que je me souvienne, Java va collecter l'objet FoxGui (ainsi que tout autre objet) si il n'y a aucune référence à cet objet. Essayez de créer une variable globale pour stocker la référence à votre nouvel objet FoxGui. Quelque chose comme ...
FoxGui MyGUIRef;
public void actionPerformed(ActionEvent event)
{
System.out.println("Item: " + event.getActionCommand());
// File Menu Controls
if (event.getActionCommand().equals("New"))
{
MyGUIRef = runNew();
}
}
//Now returns a reference to FoxGui
private FoxGui runNew()
{
return new FoxGui(....)
}
Le System.out est-il dans une fenêtre de terminal (non Java)? Si c'est le cas, je pense que ce serait beaucoup plus difficile que vous ne le pensez.
Je serais tenté de rediriger le System.in/System.out à un JTextPane sur l'interface graphique (De cette façon, il serait beaucoup plus facile de changer le focus etc. Je pense que vous devez essayer d'expliquer ce que vous « re faire un peu mieux dans votre question et peut-être poster une trace de la pile lorsque votre programme se bloque
Quoi qu'il en soit, de faire quelque chose lorsque l'élément de menu « nouveau » est cliqué, vous aurez besoin de le faire.
menuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// Code here to be performed when the item is clicked
}
});
Vous savez quoi? J'ai trouvé une solution très simple, JOptionPane. J'avais juste besoin de trouver un bon exemple. Ça marchera bien pour ce que je veux. Merci pour votre aide. Je vais cocher tous ceux qui ont aidé.
Yup yup, bonne chance avec la cession! –
Bon! ... :) Je suis content! – OscarRyz
Je sais qu'il est réponse très tard, mais nulle part ...
Il n'y a qu'une seule façon de faire exactement ce que tu veux.
- D'abord, vous devez vous rappeler de vous lancer projet, de CMD par java jar jarname.jar
- Catch action de clic et effectuer system.in
Information:
Il est le seule solution, car l'interface graphique ne donne jamais de focus à CMD, mais si l'interface graphique est exécutée à partir de CMD, vous pouvez facilement utiliser System.in.
Cordialement, Greg
- 1. Passer de .NET à Java?
- 2. Graphviz: Comment passer de .dot à un graphique?
- 3. Graphique linéaire 3D en Java
- 4. Visionneuse d'image - commandes standard de l'interface graphique, ascendante ou quoi?
- 5. quitter le fichier de commandes en utilisant le code java
- 6. Databind avec des commandes de graphique donne NotImplementedException
- 7. comment lire le graphique xls en java?
- 8. Simulation graphique Max-Flow en Java
- 9. Meilleur graphique en camembert java 3D API
- 10. quitter le fichier de commandes après l'exécution en utilisant java
- 11. Passer un million de nombres de java à matlab?
- 12. Commandes Linux depuis Java
- 13. bibliothèque graphique Java
- 14. Comment passer un objet de classe de Scala à Java?
- 15. Exécution de commandes UNIX en tant qu'utilisateur différent, à partir de Java
- 16. Thèmes de l'interface graphique Java Swing
- 17. Comment passer des données de JSF à une applet Java
- 18. évaluation XPath commandes avec java
- 19. Comment puis-je passer de Java à Clojure?
- 20. Comment passer des commandes à une console Cygwin sous Windows en utilisant Inno Setup
- 21. MVVM et les commandes qui montrent plus d'interface graphique
- 22. L'utilisation d'un éditeur graphique d'interface graphique est-elle préjudiciable à l'apprentissage de la conception graphique?
- 23. envoyer des commandes à une fenêtre/un processus démarré à partir d'un fichier de commandes
- 24. Bonne bibliothèque d'algorithme graphique Java?
- 25. Message passant à fil de travail asynchronus en Java J2ME
- 26. Comment passer Propriétés à pot de Powershell?
- 27. Passer plusieurs paramètres en un seul paramètre en Java
- 28. Exécuter des commandes de terminal à partir de l'application GUI?
- 29. Comment puis-je passer formated (\ n \ t) du texte à une ligne de commande java
- 30. commande pour fermer le fichier de commandes dans Java
Qu'est-ce qu'un FoxGui? –
Pour être honnête, je n'ai absolument aucune idée ... J'aurais pu jurer que c'était dans la question avant. Après avoir regardé d'autres réponses, je pense que cela a pu être dans mon esprit après avoir vu 'renard' dans la réponse d'Eric. Le point de référence/éboueur ne heureusement pas perdre sa signification! :) –
Ok, je le vois maintenant ("nouveau FoxGui (profondeur, largeur, renard, lapin);"); Je suppose que c'est un risque que les gens ajoutent des réponses au lieu de modifier la question. :) –