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

Python Discussion :

comment faire une ihm personnalisable


Sujet :

Python

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut comment faire une ihm personnalisable
    Bonjour à tous,

    Ceci est mon premier post sur le forum, alors je me présente :
    Je suis developpeur depuis 9 ans maintenant, c++ et .net, plutôt du monde windows, j'ai surtout developpé des clients/serveurs et de grosse IHM en MFC et .net.
    et maintenant je découvre Python...
    Sympa comme langage mais je débute...

    Je dois développer une appli avec 2 autres developpeurs, on a 6 mois pour faire un truc qui déchire.
    le sytème d'exploitation sera windows ou linux, malheureusement on ne sait pas encore.
    C'est pourquoi je solicite vos conseils sur les points suivants :

    1) l'IHM doit être moderne, c'est à dire qu'il ne faut pas la forme classique des boutons OK/Cancel et autres controls classiques.
    elle doit être entièrement configurable par l'utilisateur : couleurs, forme et position des controls (support des skins en gros)
    quelle est la bibliothèque la mieux adaptée ?

    2) l'appli doit supporter un système de plugin, et de macro
    comment faire ca en python ? existe il des librairies ?

    3) l'appli doit pouvoir appeler des fonctions natives (genre win32)
    je suppose que python peut le faire ?

    Un grand merci pour votre aide à tous
    Djé

  2. #2
    Membre éclairé
    Homme Profil pro
    heu...
    Inscrit en
    Octobre 2007
    Messages
    648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : heu...

    Informations forums :
    Inscription : Octobre 2007
    Messages : 648
    Points : 773
    Points
    773
    Par défaut
    De prima bord, je te conseillerais wxPython, qui est très polyvalent, possède par défaut les style graphique natifs, mais qui grâce à sa hiérarchie d'héritage, permet une personnalisation poussée me semble-t-il. Je dis semble, cause, le besoin de personnalisation ne s'est jamais véritablement fait sentir, mais j'ai du comprendre les objet DC (DeviceContext), pour réaliser un graphique... pas facile d'appréhension, mais terriblement efficace, et d'après ce que énonce vouloir faire, cela me semble une bonne piste.

    Du point de vu doc et book, y'a wxPython in Action, très bon, avec en complément des cours dispo ici, plus googlecode et l'api référence, et tu es paré. Ayant plus d'expérience que moi, tu aura sans doute plus de facilité à appréhender la philosophie wx...

    Pour les fonctions win32, y'a le module... pyWin32 ! Mais je ne le connaît qu'excessivement peu, le package contient 2 modules qui sont, je CROIS, inclus dans les package par défaut de python

  3. #3
    Membre éclairé
    Profil pro
    Ingénieur sécurité
    Inscrit en
    Février 2007
    Messages
    574
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2007
    Messages : 574
    Points : 751
    Points
    751
    Par défaut
    Salut,
    Citation Envoyé par djedjeyop Voir le message
    1) l'IHM doit être moderne, c'est à dire qu'il ne faut pas la forme classique des boutons OK/Cancel et autres controls classiques.
    elle doit être entièrement configurable par l'utilisateur : couleurs, forme et position des controls (support des skins en gros)
    quelle est la bibliothèque la mieux adaptée ?
    Je sais pas du tout
    Citation Envoyé par djedjeyop Voir le message
    2) l'appli doit supporter un système de plugin, et de macro
    comment faire ca en python ? existe il des librairies ?
    C'est un langage interprété, donc c'est relativement facile à faire (__import__(), import_module()). En plus il existe pas mal de framework faisant déjà ça. Par contre l'aspect sécu et sandboxing doit être très dur à gérer.
    Citation Envoyé par djedjeyop Voir le message
    3) l'appli doit pouvoir appeler des fonctions natives (genre win32)
    je suppose que python peut le faire ?

    Un grand merci pour votre aide à tous
    Djé
    Le module ctypes de la bibliothèque standard le permet de manière très efficace (le seul truc ennuyant, c'est la mapping des types Microsoft vers les types ctypes, mais bon, une fois que c'est fait...). Par exemple pour récupérer le handle d'un process:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    from ctypes import windll
     
    PROCESS_ALL_ACCESS = 0x001F0FFF
     
    kernel32 = windll.kernel32
    process_handle = kernel32.OpenProcess(PROCESS_ALL_ACCESS, pid, False)
    Bon apprentissage du python, tu vas devenir accro

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Citation Envoyé par djedjeyop Voir le message
    Ceci est mon premier post sur le forum, alors je me présente :
    Je suis developpeur depuis 9 ans maintenant, c++ et .net, plutôt du monde windows, j'ai surtout developpé des clients/serveurs et de grosse IHM en MFC et .net.
    et maintenant je découvre Python...
    Sympa comme langage mais je débute...
    Python est assez proche de toutes les cultures: objet, fonctionnel, procedural,... Vous ne vous sentirez pas trop dépaysé et progresserez rapidement. Prenez le temps de lire un peu.

    1) l'IHM doit être moderne, c'est à dire qu'il ne faut pas la forme classique des boutons OK/Cancel et autres controls classiques.
    elle doit être entièrement configurable par l'utilisateur : couleurs, forme et position des controls (support des skins en gros)
    quelle est la bibliothèque la mieux adaptée ?
    Etes vous sur de vouloir faire cela en client lourd?
    Si oui, GTK+, WxWidget, QT, s'interfacent avec Python.
    Pour les skins, QT a des styles et des sortes de CSS qui permettent peut être de faire çà.
    Pour les autres, je ne sais pas.

    2) l'appli doit supporter un système de plugin, et de macro
    comment faire ca en python ? existe il des librairies ?
    QT a des plugins définis
    Python a différentes façons pour réaliser des plugins: du plus simple au plus compliqué

    3) l'appli doit pouvoir appeler des fonctions natives (genre win32)
    je suppose que python peut le faire ?
    Yes. Aller chercher votre Python chez AciveState, il contient tout ce qu'il faut côté COM, OLE, Win32 pour parler à Windows sans soucis.
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre confirmé Avatar de calogerogigante
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    602
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2003
    Messages : 602
    Points : 497
    Points
    497
    Par défaut
    Pour se faire une idée de la puissance et la beauté des interfaces wxPython : rien ne vaut de l'installer, et de tester ensuite la démo (téléchargeable séparément), qui montre des tas des exemples d'interfaces H-M vraiment bluffant !!!

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Citation Envoyé par calogerogigante Voir le message
    Pour se faire une idée de la puissance et la beauté des interfaces wxPython : rien ne vaut de l'installer, et de tester ensuite la démo (téléchargeable séparément), qui montre des tas des exemples d'interfaces H-M vraiment bluffant !!!
    Je sais que c'est intéressant mais je n'ai pas trop le temps en ce moment de refaire avec wxPython le boulot d'évaluation fait avec PyQT ou PySide.

    - W
    PS: Le seul point bloquant avec WxPython est que nous n'avons aucune idée de sa disponibilité en Python3K
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #7
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 418
    Points : 1 658
    Points
    1 658
    Par défaut
    De prima bord

    N.tox
    Une cantatrice d'opera italienne , sans doute ?
    Pourtant je n'ai trouvé aucune discographie de la prima donna Bord.
    Serait-ce alors une cantatrice d'opérette chantant à bord de paquebots de croisière de luxe ?
    Je me perd en conjectures......

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    whaaooo !

    merci pour toutes vos réponses,
    je vais esseyer tout ca, et je vous tiens au courant sur les choix que l'on aura fait !

Discussions similaires

  1. Réponses: 3
    Dernier message: 24/08/2011, 14h06
  2. Réponses: 3
    Dernier message: 03/06/2011, 10h44
  3. Comment faire une Maquette IHM?
    Par horse dans le forum ALM
    Réponses: 4
    Dernier message: 17/04/2010, 11h11
  4. comment faire une IHM en perl
    Par nidgem dans le forum Langage
    Réponses: 2
    Dernier message: 06/06/2007, 13h36
  5. Newbie : comment faire une IHM comme eclipse?
    Par eponette dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 02/03/2006, 16h25

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