IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

Gestion Souris accessible pour l'ensemble des applications en cours d'exécution sur un PC


Sujet :

Entrée/Sortie Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Octobre 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1
    Points : 3
    Points
    3
    Par défaut Gestion Souris accessible pour l'ensemble des applications en cours d'exécution sur un PC
    Bonjour,

    J'ai un PC connecté au travers d'un réseau à 3 systèmes d'information distincts. Mon objectif est de synchroniser la mise à jour de ces 3 systèmes d'informations. Je souhaite développer une application sous JAVA qui me permette de faire, au lieu de la faire manuellement, des copier/coller d'une application à l'autre. Ce dont j'ai besoin c'est d'une fonction JAVA qui me permette (1) d'activer l'une de ces applications en mémoire, (2) de positionner la souris sur un champ, (3) de faire un copier , (4) d'activer la seconde application, (5) positionner sur le champ à mettre à jour et (6) de faire un coller.

    Ma difficulté est que je ne sais pas comment faire sortir ma souris de la fenêtre JAVA pour pointer les deux champs avec une commande de la souris.

    Je ne sais pas si c'est difficile à faire, mais ce serait sympa si quelqu'un pouvait me donner un exemple.
    Merci d'avance pour votre aide. Pierre

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Java en standard gère sa propre UI : on est pas censé pouvoir interférer avec les autres applications, quelles soient en Java ou pas. Ce n'est pas le même système et on y a pas accès de toute manière. Maintenant, il y a différentes possibilités :
    • on peut piloter le pointeur de souris et simuler un clic, n'importe où à l'écran (voir la classe java.awt.Robot). On peut simuler le clavier. Donc, si tes fenêtres sont à un endroit prévisible, avec un scénario prévisible, tu peux programmer une sorte de macro qui fait ce que tu veux faire. A noter, qu'il existe des logiciels qui permettent de le faire et qu'il n'y a rien à programmer (juste à faire une fois le scénario à répéter).
    • en pur Java, le problème c'est qu'on ne peut écouter d'évenement provenant d'UI extérieur de l'application (pour une application Java, avec le même type d'UI (donc Swing des 2 côtés), on pourrait faire quelque chose, mais pour une application non Java non), encore moins accèder aux composants et à leur conteu. Sous Windows, en utilisant l'API JNA et les DLL de Windows, on peut réussir à introspecter l'UI et à récupérer des choses (comme la valeur saisie dans un champ) ou déterminer l'emplacement d'un champ particulier précisemment est faisable. C'est beaucoup de boulot (de programmation, mais aussi d'analyse).
    • Pär activer une application en mémoire, je suppose que tu parles de l'exécuter. Ça, on peut le faire, avec la classe ProcessBuilder. L'arrêter sera plus compliqué.


    Plutôt que d'essayer de simuler les manipulations à la main, tes systèmes d'informations ne disposent-ils pas d'API, qui te permettrait d'automatiser tes transferts, sans bidouille, de façon sure, sans accaparer l'affichage et l'UI (sache que pendant que l'application simulera ton copier/coller, tu ne pourras rien faire sur ton PC, ou plutôt si, mais faudra pas, parce que ça va faire n'importe quoi - sans parler de ce qui pourrait se passer de façon inopinée qui viendrait foutre le dawa aussi, comme une notification de mail par exemple) ?
    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.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/07/2010, 18h56
  2. Réponses: 11
    Dernier message: 19/05/2009, 16h52
  3. Réponses: 3
    Dernier message: 19/10/2007, 14h32
  4. Rafraishissement de l'ensemble des applications
    Par Ludo_360 dans le forum Delphi
    Réponses: 7
    Dernier message: 06/06/2007, 13h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo