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

  1. #1
    Responsable Delphi

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    février 2013
    Messages
    1 361
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : février 2013
    Messages : 1 361
    Points : 18 460
    Points
    18 460
    Billets dans le blog
    79

    Par défaut Techniques d'enchaînements de formes (SDI, MDI et Docking), un tutoriel de Serge Girard

    Techniques d'enchaînements de formes
    SDI, MDI et Docking


    Dès lors que l’on écrit des applications de taille conséquente, l’interface utilisateur se compose de nombreux écrans différents s’enchaînant ou non. Serge Girard passe en revue trois techniques (SDI, MDI et Docking) à la disposition du programmeur pour la gestion de ce problème en insistant sur le Docking.

    Les utilisateurs de Delphi seront tout particulièrement intéressés par l'équivalent proposé pour le framework FireMonkey qui ne dispose pas de propriété adaptée.

    Nom : dockingexecution_2.PNG
Affichages : 259
Taille : 25,3 Ko


    Merci à Serge pour ce cadeau de Noël qui donne de la couleur au site et de la vitalité aux applications écrites avec Delphi !

    Le tutoriel est visible ici : https://serge-girard.developpez.com/...elphi/Docking/

    Que pensez-vous de ce tutoriel ?
    Comment gérez-vous les écrans de vos applications ?


    Les meilleurs cours et tutoriels pour apprendre la programmation Delphi
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    9 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 9 849
    Points : 24 306
    Points
    24 306
    Billets dans le blog
    17

    Par défaut

    Merci Gilles d'avoir jouer au Père Noël et d'avoir glisser sous le sapin mon petit cadeau à tous les Delphistes.
    Il y en a d'autres dans ma hotte (disque dur) mais l'emballage (corrections) n'est pas encore fait ce sera pour l'année prochaine
    - une suite à ce tutoriel : FMX, mettre un bouton dans un onglet
    - LiveBindings et composants (je finirai bien par me sortir de l'impasse)
    - LiveBindings et POO, je n'ai pas oublié les demandes à Paris

    j'envisage aussi d'écrire sur les styles, j'ai découvert quelques astuces suite à ma pose de bouton dans un onglet.

    Si d'autres suggestions viennent au lecteur de passage, qu'il n'hésite pas à affuter ma curiosité

    Bonnes fêtes de fin d'année à tous

    Serge
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Berlin, Tokyo) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  3. #3
    Membre régulier
    Développeur informatique
    Inscrit en
    décembre 2010
    Messages
    136
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : décembre 2010
    Messages : 136
    Points : 90
    Points
    90

    Par défaut

    Merci pour ce tuto qui présente parfaitement la gestion des formes dans les frameworks VCL et FMX.

    Bonne fêtes à tous

    Lefju

  4. #4
    Invité
    Invité(e)

    Par défaut

    Merci Serge pour tous tes tutos

  5. #5
    Membre chevronné
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    décembre 2006
    Messages
    1 255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : décembre 2006
    Messages : 1 255
    Points : 1 899
    Points
    1 899

    Par défaut

    Bravo Serge et encore merci
    A+
    Charly

  6. #6
    Membre expérimenté
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    mars 2006
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : mars 2006
    Messages : 1 042
    Points : 1 685
    Points
    1 685
    Billets dans le blog
    5

    Par défaut

    Bonjour, une petite alternative à l'un de tes programmes exemple utilisant la propriété Parent (très à la mode ces jours-ci ). Utilisable de la même manière en FMX et en VCL
    Amitiés Alain
    Fichiers attachés Fichiers attachés

  7. #7
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    9 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 9 849
    Points : 24 306
    Points
    24 306
    Billets dans le blog
    17

    Par défaut

    Bonjour Alain,

    Question de goût, avec FMX je préfère utiliser AddObject . Certes AddObject lance plus d'instructions, dont celle de changer le parent , mais ainsi je suis sûr qu'interfaces, styles, etc..
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Berlin, Tokyo) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  8. #8
    Membre expérimenté
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    mars 2006
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : mars 2006
    Messages : 1 042
    Points : 1 685
    Points
    1 685
    Billets dans le blog
    5

    Par défaut

    Citation Envoyé par SergioMaster Voir le message
    Bonjour Alain,

    Question de goût, avec FMX je préfère utiliser AddObject . Certes AddObject lance plus d'instructions, dont celle de changer le parent , mais ainsi je suis sûr qu'interfaces, styles, etc..
    J'avais effectivement eu quelques problèmes avec les feuilles de style en FMX que j'avais centralisé dans un TDatamodule

  9. #9
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    août 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : août 2008
    Messages : 635
    Points : 606
    Points
    606

    Par défaut

    Je te remercie beaucoup pour tous ces magnifiques tutoriels

  10. #10
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : novembre 2006
    Messages : 438
    Points : 2 370
    Points
    2 370

    Par défaut

    Merci Sergio pour ce cadeau de Noël
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  11. #11
    Membre régulier Avatar de Galet
    Homme Profil pro
    Consultant/Programmeur Robotique industrielle
    Inscrit en
    mars 2010
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant/Programmeur Robotique industrielle

    Informations forums :
    Inscription : mars 2010
    Messages : 49
    Points : 93
    Points
    93

    Par défaut

    Merci pour ces tutoriels...encore des nouvelles méthodes alléchantes à tester...
    Windows 7 / Delphi Tokyo
    "Les choses ne changent pas. Change ta façon de les voir, cela suffit" Lao Tseu

  12. #12
    Membre actif Avatar de der§en
    Homme Profil pro
    Développeur informatique
    Inscrit en
    septembre 2005
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Services de proximité

    Informations forums :
    Inscription : septembre 2005
    Messages : 274
    Points : 227
    Points
    227

    Par défaut

    Excellent tuto , vraiment !

    Pour la partie FMX, j'ai juste une petite remarque a faire, tu utilises cette syntaxe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      ATabItem := TabControl1.Add();
      Liste.Add(Format('Tab%d%8x',[TabControl1.TabCount-1,F.RectColor]),F);
    Moi cela me chagrine, je préfère ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      ATabItem := TabControl1.Add();
      Liste.Add(Format('Tab%d%8x',[ATabItem.Index, F.RectColor]), F);
    A moins qu'il existe une raison, a ce choix...

  13. #13
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    9 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 9 849
    Points : 24 306
    Points
    24 306
    Billets dans le blog
    17

    Par défaut

    Bonjour
    Citation Envoyé par der§en Voir le message
    A moins qu'il existe une raison, a ce choix...
    Aucune si ce n'est que je n'y ait pas pensé pour la petite histoire, au départ j'ai utilisé une variable globale puis une propriété. Il fallait donc incrémenter cette variable, j'ai voulu simplifier au maximum et donc supprimé celle-ci, la ligne suivante m'a poussé à utiliser la même "syntaxe".
    Ta note est rajoutée , j'en ai également profité pour ajouter une autre note indiquant que le docking est également une fonctionnalité de D4, encore merci defluc pour cette précision.

    Joyeuses fêtes de fin d'année
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Berlin, Tokyo) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  14. #14
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2010
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2010
    Messages : 31
    Points : 8
    Points
    8

    Par défaut une autre "form" de stokage

    Avec le SDI et la VCL on peut aussi afficher un TForm dans un autre TForm et si dans le TForm enfant vous retirez le barre de titre et ses boutons vous avez tous les avantages d'un TForm sans son aspect. Plus rapide en programmation et plus simple en gestion de fenêtres.

  15. #15
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    9 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : janvier 2007
    Messages : 9 849
    Points : 24 306
    Points
    24 306
    Billets dans le blog
    17

    Par défaut

    Bonjour,

    Avec le SDI et la VCL on peut aussi afficher un TForm dans un autre TForm et si dans le TForm enfant vous retirez le barre de titre et ses boutons vous avez tous les avantages d'un TForm sans son aspect.
    Je ne suis pas du tout d'accord, en maintenant certaines applications je suis justement "tombé" sur des cas semblables et c'est justement à cause du comportement de l'application (formes cachées) que l'on avait fait appel à mes services.

    La forme "enfant" que vous décrivez n'en est pas une au sens strict du terme, déplacez la forme principale la forme enfant ne suit pas. Ce n'est pas tant l'affichage d'une fenêtre dans une autre fenêtre que sur une autre fenêtre que vous faites. Vous pourriez faire la même chose avec un TFrame
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Berlin, Tokyo) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

Discussions similaires

  1. Form Enfants MDI 'onglets' du Parent
    Par Jeterh dans le forum VB.NET
    Réponses: 1
    Dernier message: 03/10/2012, 21h22
  2. Form vers MDI Application
    Par phil3875 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 13/11/2009, 12h58
  3. [Lazarus] [0.9.26.2/XP] Form SDI : Bouton barre des tâches
    Par Invité dans le forum Lazarus
    Réponses: 1
    Dernier message: 20/04/2009, 10h07
  4. Windows Forms application mdi
    Par kekesilo dans le forum Windows Forms
    Réponses: 1
    Dernier message: 22/05/2007, 17h29
  5. form ou mdi merci
    Par patou60110 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 17/03/2007, 20h29

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