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

Autres Java Discussion :

Du Qt en Java avec Qt Jambi


Sujet :

Autres Java

  1. #1
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut Du Qt en Java avec Qt Jambi
    Vous avez envie d'avoir des interfaces qui s'adaptent à votre environnement de travail ? Et, en plus, pour tout un tas de raisons, vous souhaitez le faire en Java plutôt qu'en C++ ?

    Allons-y, je vais vous expliquer pas à pas ma démarche.

    Ce tutoriel n'a pas pour vocation d'être la bible du Qt Jambi mais plutôt de vous aider à vous jeter dans la gueule du loup relativement simplement (ce qui est écrit juste après est le fruit de plusieurs heures de recherches).

    Du Qt en Java avec Qt Jambi

  2. #2
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Personnellement j'ai un peu des doutes sur la pérennité du projet, il a été droppé par Nokia, donc ce sont des bénévoles qui l'ont repris, et de plus le passage à Qt5 lui sera probablement fatal (grosso modo il faudrait refaire tout les bindings pour s'adapter à tout ce qui est scenegraph, QML, QtComponents &cie)...

  3. #3
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Non, pas besoin de tout refaire, ils peuvent très bien repartir sur les bases actuelles. QML n'est pas une nouveauté de Qt 5, c'est déjà dans Qt 4.7 (et pas encore supporté par Jambi). Mais ce n'est pas forcément le plus bloquant, le binding est déjà bien fonctionnel, on peut déjà bien s'amuser avec lui.

  4. #4
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Pour programmer en Java, chacun a ses propres habitudes. Pour ma part, je suis partisan du non EDI, tout en ligne de commandes... De la même manière que j'ai choisi Linux pour comprendre ce que je faisais, je préfère la ligne de commande quand je programme.

    Seulement, si vous êtes sous Windows ou que vous n'aimez pas la ligne de commande, vous pouvez utiliser un IDE. Je partirais volontier du principe que vous savez utiliser votre IDE.

    Utiliser Qt avec Java

  5. #5
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    Sans vouloir d'abuser, tu pourrais mettres des pages suivante / précédente dans les tutos, parce que c'est pas facile de devoir à chaque fois revenir sur la page de garde pour cliquer sur le lien suivant

    PS: dommage, pas de version windows java 64 bits :/

  6. #6
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 74
    Points : 136
    Points
    136
    Par défaut
    Citation Envoyé par sinok Voir le message
    Personnellement j'ai un peu des doutes sur la pérennité du projet, il a été droppé par Nokia, donc ce sont des bénévoles qui l'ont repris, et de plus le passage à Qt5 lui sera probablement fatal (grosso modo il faudrait refaire tout les bindings pour s'adapter à tout ce qui est scenegraph, QML, QtComponents &cie)...
    J’apprécie beaucoup Qt, mais je partage l'avis de sinok (mais ou est Madame Folding ?!).

    J'avais effectivement noté la même chose, et si on rajoute en toile de fond M$ avec sa venue dans l’écosystème nokia...

  7. #7
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    Sans vouloir d'abuser, tu pourrais mettres des pages suivante / précédente dans les tutos, parce que c'est pas facile de devoir à chaque fois revenir sur la page de garde pour cliquer sur le lien suivant
    Je viens d'ajouter des références en bas d'article, avec des liens vers tous les articles de la série déjà publiés !

    Citation Envoyé par nickylarson Voir le message
    J'avais effectivement noté la même chose, et si on rajoute en toile de fond M$ avec sa venue dans l’écosystème nokia...
    Ils en viennent à tellement tenter de rassurer les développeurs que ça commence à devenir inquiétant, en effet. Dernière tentative en date : http://blog.qt.nokia.com/2011/06/21/...-next-billion/, avec http://qt.developpez.com/actu/34368/...-framework-Qt/.

  8. #8
    Membre confirmé Avatar de herzleid
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2002
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Directeur des systèmes d'information

    Informations forums :
    Inscription : Juin 2002
    Messages : 393
    Points : 509
    Points
    509
    Par défaut
    Citation Envoyé par sinok Voir le message
    Personnellement j'ai un peu des doutes sur la pérennité du projet, il a été droppé par Nokia, donc ce sont des bénévoles qui l'ont repris, et de plus le passage à Qt5 lui sera probablement fatal (grosso modo il faudrait refaire tout les bindings pour s'adapter à tout ce qui est scenegraph, QML, QtComponents &cie)...
    C'est un faux argument. Le nombre de projets de niveau professionnel qui tourne avec des bénévoles est très important.
    Par contre, le fait qu'il y ait peu de battage autour de cette solution, risque de lui être fatale (peu de nouveau dev, peu de renouvellement de dev etc ....)

  9. #9
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Dans ce tutoriel, nous allons voir les bases de la création d'un projet en utilisant Qt Jambi. Nous verrons comment ouvrir une fenêtre.

    Qt Jambi : codons notre première fenêtre

  10. #10
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Plusieurs possibilités pour agencer les widgets (objets graphiques) dans une fenêtre : cela s'appelle les layouts (ou dispositions).

    Qt Jambi : disposer les choses

  11. #11
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Maintenant qu'on sait disposer des objets dans des widgets, il faut finalement mettre ce widget dans une fenêtre pour l'afficher. Mais, jusque là, tout s'affichait très bien ? Oui, car votre gestionnaire de fenêtres, ne pouvant pas afficher un widget seul, créait une fenêtre pour que nous puissions afficher notre widget. Mais, si on veut changer le titre, par exemple, il faut une vraie fenêtre.

    Qt Jambi : une boîte de dialogue

  12. #12
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Le plus souvent, pour organiser tout cela, on utilise des menus, des barres d'outils et une barre de statut. Qt nous propose un objet QMainWindow pour gérer tout cela.

    Qt Jambi : une application avec des menus et des barres d'outils

  13. #13
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Un objet Qt (dérivant de QObject) peut utiliser les mécanismes de signaux/slots. Ce mécanisme est une implémentation du pattern observateur qui consiste à émettre un signal sans connaitre le(s) destinataire(s) et recevoir un signal sans connaître l'émetteur (bien que l'on puisse le savoir si nécessaire, ce n'est en général pas le cas). La manière dont elle a été portée pour Qt Jambi est très intéressante. Lisez plutôt...

    Qt Jambi : connecter les objets entre eux

  14. #14
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    On peut bien sûr utiliser les signaux existants, mais ça peut-être intéressant d'émettre des signaux entre ses propres objets. Heureusement pour nous, avec Qt Jambi c'est très facile. Voyez plutôt...

    Qt Jambi : émettre un signal

  15. #15
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    On va ici créer un lecteur avec des menus.

    Qt Jambi : JEditor, un simple éditeur de fichier texte

  16. #16
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    On va ici créer une visionneuse d'images avec des menus.

    Qt Jambi : JViewer, un lecteur d'image

  17. #17
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 6
    Points : 8
    Points
    8
    Par défaut
    Ce qui est appréciable avec qt Jambi reste la rapidité avec laquelle on définit des raccourcis clavier.

    Les raccourcis de JMenuItem sont assez longs à définir en comparaison de ceux montrés ici.

    Des avis sur le "long terme" quant à l'utilisation de ce portage de Qt ?

    Merci pour ces explications claires.

  18. #18
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 694
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 694
    Points : 188 894
    Points
    188 894
    Par défaut
    Citation Envoyé par Noze_ Voir le message
    Des avis sur le "long terme" quant à l'utilisation de ce portage de Qt ?
    Ce n'est pas un portage, c'est un binding : tout ce que tu fais en Java finit en appels de fonctions C++. La différence est grande : tout ce qui améliore Qt sans toucher à son API est directement disponible à Qt Jambi ; par contre, toute modification de l'API requiert des modifications du côté de Qt Jambi, pour la plupart automatisables.

    Ensuite, ce binding sera encore utilisable pour Qt 4.8 sans grandes modifications, si du moins la séparation en modules ne change pas trop l'architecture actuelle. Par contre, pour Qt 5 et Qt Quick, il n'y a pour le moment rien de prévu : personne qui travaille sur le support de Qt Quick ; Qt 5 apportant une modularisation effective avec open governance et tout ce qui va avec, ça risque de ne pas être une partie de plaisir de leur côté.

  19. #19
    Membre habitué Avatar de zodd
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    276
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 276
    Points : 147
    Points
    147
    Par défaut
    Bonjour,

    Utilisateur de Qt et voulant tester une bibliothèque Java qui semble "mieux faite" que ce qu'on trouve sous C++, je me suis dit que c'était l'occasion de tester Qt Jambi.

    là je sis sous windws avec Qt creator comme IDE.. et je bloque déjà sur cette partie du tutorial:

    "Il vous faut aussi configurer le classpath pour ajouter qtjambi/qtjambi.jar à la liste des bibliothèques nécessaires à la compilation et à l'exécution. Dans votre EDI favori, vous pouvez configurer qtjambi comme une nouvelle bibliothèque et ajouter la javadoc. Il vous faudra ensuite ajouter QtJambi comme bibliothèque de votre projet. "


    De plus si j'utilise la ligne de commande pour tester le premier exemple il se passe ça:
    C:\Tests>javac -cp c:\qtjambi-4.7.1\qtjambi.jar:. Test.java
    'javac' n'est pas reconnu en tant que commande interne
    ou externe, un programme exécutable ou un fichier de commandes.

    J'ai une autre question, quelqu'un a-t'il un projet de base type helloworld à tester pour commencer et être sur qu'on a bien paramétré notre IDE comme il faut?

  20. #20
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    Citation Envoyé par zodd Voir le message

    là je sis sous windws avec Qt creator comme IDE.. et je bloque déjà sur cette partie du tutorial:
    Je ne pense pas que QT creator soit capable de faire autre chose que du C++. Les IDEs les plus courant pour faire du java sont netbeans, eclipse, intelliJ IDEA

    De plus si j'utilise la ligne de commande pour tester le premier exemple il se passe ça:
    C:\Tests>javac -cp c:\qtjambi-4.7.1\qtjambi.jar:. Test.java
    'javac' n'est pas reconnu en tant que commande interne
    ou externe, un programme exécutable ou un fichier de commandes.
    As-tu bien installer le jdk java? si oui, tu ne l'a pas mis dans le path (normalement c'est automatique, mais il y a surement un case dans l'installeur pour ne pas le faire). Le plus simple est de tapper le chemin complet vers java (c:\program files\oracle\java\jdk1.7\ etc etc)

Discussions similaires

  1. [Plugin][Débutant] Lancement d'une appli Java avec un plugin
    Par antares24 dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 29/07/2004, 15h18
  2. Communication C-Java avec Orbit
    Par damsh dans le forum CORBA
    Réponses: 4
    Dernier message: 05/06/2004, 01h24
  3. Exécutable Java avec JRE intégré
    Par clawhammer dans le forum JBuilder
    Réponses: 2
    Dernier message: 06/10/2003, 17h26
  4. Réponses: 2
    Dernier message: 26/05/2003, 20h42

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