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

Langage Delphi Discussion :

Demande de conseil sur application.


Sujet :

Langage Delphi

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 439
    Points : 161
    Points
    161
    Par défaut Demande de conseil sur application.
    Bonjour,

    Mon application possède une form Main Menu, sur laquelle des boutons envoient vers d'autre forms.
    Me conseillez vous de créer toutes les forms au lancement de l'application et d'ouvrir les autres par des Show.Modal, ou de créer les autre s forms au click sur les boutons du Main menu?

    Merci de vos lumières

    Cordialement
    Pierre

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 037
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    Bonsoir,

    Créer les formes au besoin, et les détruire à la sortie, mais comme j'ai horreur de showmodal, passer par des fenêtres enfants
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 439
    Points : 161
    Points
    161
    Par défaut
    Bonsoir,

    Vous pensez à un application MDI?

    Cordialement
    Pierre

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 037
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Tout dépend de la version de Delphi que vous utilisez mais en gros Oui. Il n'y a rien de plus que d'avoir à faire avec une application qui fait surgir plusieurs fenêtres (je ne parle pas des messages) avec un peu de malchance les fenêtres se positionnent mal, une réduction, un appel à une impression et tout fout le camp (j'ai eu une maintenance d'un logiciel comme ceci, c'est un sacré casse tête frustrant)

    En fait il y a deux solutions : une fenêtre parente et des fenêtres enfants (MDI) ou la technique de docking d'une forme dans la fenêtre principale.

    Je ne sais pourquoi, le style MDI a eu tendance a être décrié et abandonné je suis ensuite passé au docking puis avec les nouvelles versions et FMX c'est encore une autre technique proche du docking que j'utilise (un layout dans la forme principale un layout contenant tous les composants de la forme "enfant", une petite parenté et le tour est joué.

    Pour comprendre le docking : deux petites vidéos en anglais http://www.codegearguru.com/video/032/FormDocking.html et sa suite http://www.codegearguru.com/video/033/FormDocking2.html

    si besoin, j'ai "en magasin" un code pour chaque technique
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 439
    Points : 161
    Points
    161
    Par défaut
    Merci beaucoup pour ces précisions.

    Mon problème(Si s'en est un) est que mes formes ouvertes à partir de ma forme principale affichent des données qui doivent être conservées lorsqu'elles sont fermées pour être à nouveau utilisable plus tard si je dois les rouvrir.
    Est-il aisé d'utiliser cette technique dans ses conditions?

    Bien cordialement
    Pierre

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 037
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    Re,

    en général la partie données est séparée de la fiche, c'est à ça que sert un datamodule.
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 439
    Points : 161
    Points
    161
    Par défaut
    Merci beaucoup pour ces informations.
    Je vais creuser dans ce sens.

    Bien cordialement
    Pierre

  8. #8
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 452
    Points : 24 863
    Points
    24 863
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Tout dépend de la version de Delphi que vous utilisez mais en gros Oui. Il n'y a rien de plus que d'avoir à faire avec une application qui fait surgir plusieurs fenêtres (je ne parle pas des messages) avec un peu de malchance les fenêtres se positionnent mal, une réduction, un appel à une impression et tout fout le camp (j'ai eu une maintenance d'un logiciel comme ceci, c'est un sacré casse tête frustrant)
    C'est tout à un art de positionner les fenêtre correctement, parfois en Centrée, parfois en dessous du curseur (idéal pour un petit sélecteur genre InputQuery)
    Je peux te dire que j'ai vu des codes bien pires avec de très mauvaises gestions du MDI

    Petit remarque, en fait les utilisateurs ne pige rien au MDI, au bout de deux fenêtres, ils sont perdus
    en gros faut faire une application MDI mais où l'utilisateur ne se rend pas compte qu'il y a plusieurs documents, voire même un "empilement" de fenêtre !
    En effectivement, cela revient à faire du Docking, c'est un MDI mais qui n'a qu'un seul document visible

    Perso, selon la cible et le métier, je fais du MDI, du SDI simple ou du SDI Modale

    Je dirais que Outlook est une référence en terme d'IHM
    La barre latérale pour naviguer entre les gros "thèmes" comme Mail / Calendrier / Contact / Taches mais que l'on pourrait très bien remplacer par Client / Commande / Expédition

    Word, c'est du MDI déguisé en Multi-SDI
    Excel est le seul a être encore en MDI mais avec le regroupement des instances dans la barre de taches, on l'utilise finalement comme du Multi-SDI


    Enfin pour la gestion des données, le DataModule est un début mais cela peut devenir aussi des monstres avec 300 Query ce qu'il faut éviter !
    Faire une couche objet "métier" bien séparé de l'IHM est un exercice qui réclame de la rigueur, et c'est là que la POO fait ses preuves !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 05/09/2007, 13h24
  2. demande de conseil sur le modèle entité/association
    Par amandiiiiiine dans le forum Access
    Réponses: 3
    Dernier message: 02/01/2007, 00h34
  3. Conseils sur Application client/serveur
    Par MICHELBORLAND dans le forum Bases de données
    Réponses: 2
    Dernier message: 22/05/2006, 15h58
  4. demande de conseils sur l'utilisation d'index
    Par Ickou dans le forum Requêtes
    Réponses: 4
    Dernier message: 29/03/2006, 12h13
  5. [SGBD] demande de conseil sur script util (FPDF et mysql_insert_id)
    Par mangafan dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 12/10/2005, 00h57

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