Publicité
+ Répondre à la discussion Actualité déjà publiée
Page 1 sur 2 12 DernièreDernière
Affichage des résultats 1 à 20 sur 36
  1. #1
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Modérateur
    Avatar de sinok
    Profil pro
    Inscrit en
    août 2004
    Messages
    8 756
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : août 2004
    Messages : 8 756
    Points : 11 829
    Points
    11 829

    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)...
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  3. #3
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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.
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  4. #4
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  5. #5
    Expert Confirmé Sénior
    Avatar de tchize_
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    avril 2007
    Messages
    21 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Service public

    Informations forums :
    Inscription : avril 2007
    Messages : 21 359
    Points : 35 103
    Points
    35 103

    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 :/
    Tchize (Чиз) faq java, cours java, javadoc. Pensez à et
    Laisse entrer le jour après une nuit sombre. Si tu es toujours là, tu n'es pas faite pour mourir.

  6. #6
    Membre du Club
    Homme Profil pro
    Inscrit en
    mai 2003
    Messages
    58
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mai 2003
    Messages : 58
    Points : 57
    Points
    57

    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...
    +--------------------------------------------------+
    Avec le TGV Marseille est devenue la banlieue de paris,
    Et avec Internet le monde est de plus en plus petit,
    Mais ce n'est pas une raison pour aller polluer
    L'espace
    +--------------------------------------------------+

  7. #7
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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/.
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  8. #8
    Membre éprouvé Avatar de herzleid
    Inscrit en
    juin 2002
    Messages
    387
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : juin 2002
    Messages : 387
    Points : 403
    Points
    403

    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

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  10. #10
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  11. #11
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  12. #12
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  13. #13
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  14. #14
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  15. #15
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    Par défaut

    On va ici créer un lecteur avec des menus.

    Qt Jambi : JEditor, un simple éditeur de fichier texte
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  16. #16
    Responsable Qt

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    Par défaut

    On va ici créer une visionneuse d'images avec des menus.

    Qt Jambi : JViewer, un lecteur d'image
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  17. #17
    Invité régulier
    Homme Profil pro Daniel
    Étudiant
    Inscrit en
    juillet 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Nom : Homme Daniel
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juillet 2011
    Messages : 6
    Points : 6
    Points
    6

    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

    Avatar de dourouc05
    Homme Profil pro Thibaut Cuvelier
    Étudiant
    Inscrit en
    août 2008
    Messages
    19 354
    Détails du profil
    Informations personnelles :
    Nom : Homme Thibaut Cuvelier
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 19 354
    Points : 70 080
    Points
    70 080

    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é.
    Vous souhaitez participer aux rubriques Qt ou PyQt/PySide (tutoriels, FAQ, traductions, sources) ? Contactez-moi par MP.

    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  19. #19
    Membre habitué Avatar de zodd
    Inscrit en
    septembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : septembre 2005
    Messages : 265
    Points : 106
    Points
    106

    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?
    Stay a while and listen...

  20. #20
    Expert Confirmé Sénior
    Avatar de tchize_
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    avril 2007
    Messages
    21 359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Service public

    Informations forums :
    Inscription : avril 2007
    Messages : 21 359
    Points : 35 103
    Points
    35 103

    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)
    Tchize (Чиз) faq java, cours java, javadoc. Pensez à et
    Laisse entrer le jour après une nuit sombre. Si tu es toujours là, tu n'es pas faite pour mourir.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •