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

Composants VCL Delphi Discussion :

Difficultés avec les Frames


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2002
    Messages
    41
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Septembre 2002
    Messages : 41
    Par défaut Difficultés avec les Frames
    Bonjour a tous,
    Je suis sur un Projet Delphi et j'utilise l'objet TFrame, seulement j'ai constater une certaine lourdeur à louverture de mes Forms.
    Voici le Code utilisé à l'ouverture de Mon Form1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Frame_ticket_reception.Init(DsPrincipale,':Num_patient = Num_patient','Ticket de reception',Module_traitement.Q_ticket_reception,TF_ticket_reception,TF_ticket_reception,TF_ticket_reception);
    Frame_ticket_reception.Titre_formulaire:='Liste des tickets ';
     
    Frame_admission.Init(DsPrincipale,':Num_patient = Num_patient','Facture d''Hospitalisation',Module_traitement1.Q_admission,TF_admission,TF_admission,TF_admission);
    Frame_admission.Titre_formulaire:='Liste des Admissions ';
    Ce code est appelé dans l'Evenement FormActivate;

    Vous constaerez que le Form1 ouvre 2 Form distincts que son Form2 et Form3.
    Form2 = Liste des Tickets et Form3= Liste des Admissions
    ces dernières contenant chacune d'autres Frames.

    Pouvez vous m'aider à mieux gérer l'ouverture et la fermeture de mon composant TFrame afin que l'application soit un peu plus souple.

    Encore merci pour votre aide.

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    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 : 14 124
    Par défaut
    Citation Envoyé par sir_ben Voir le message
    Vous constaerez que le Form1 ouvre 2 Form distincts que son Form2 et Form3.
    Euh, constatez où ?
    On peut pas deviner ce que tu fais en passant des MetaClass à des fonctions !
    C'est des Form ou des Frame, tes Form1, 2 et 3 ?
    Tu peux utiliser leur nom à la place d'un numéro ! ça rend ton explication confuse par rapport au code présenté

    Init est-elle une fonction d'un ancêtre commun ?
    Pourquoi passer trois fois la référence de classe ?
    Avec Self.ClassType, tu peux obtenir la classe en cours même dans la fonction ancêtre

    La Frame c'est utile pour faire une sorte de composant réutilisable dans l'IDE ! Si on ne l'utilise qu'une seule fois, le choix de la frame est discutable
    Si tu fais uniquement de l'instanciation dynamique, utilise des Form que tu ancres en changeant Parent, Align et BorderStyle en bsNone !
    Perso, je trouve cela plus souple et force à mieux découper métier et présentation en évitant d'utiliser des controles entre les forms !

    Qu'est-ce qu'une lourdeur ?
    J'ai maintenu une appli avec une fenêtre contenant 20 onglets, plus de 1000 contrôles (tout étant conçu dans un designer intégré à l'appli, chaque client ayant ses propres écrans et sa prop DB), la DFM étant stocké en DB (issu d'un XML + XSLT).
    Les Ecrans devenant un peu lourd (bcp de données scientifiques, virologie, génétique...), ça devenait un long dans les 5-6 secondes !

    J'ai ajouté une petite progession à chaque step (Load an UnZip DFM et XML, Opération sur le Owner et les références publiées, lecture du XML affectant le DFM, chargement données Client...) avec la barre de progression, le temps perçu est moindre qu'avec une application bloquée, et j'ai surtout améliorer le code, mais ça reste pour le plus gros 2-3 secondes !
    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

Discussions similaires

  1. [HTML] Problèmes avec les frames
    Par mika0102 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 11/06/2007, 15h07
  2. Difficulté avec les Radio button
    Par toitonline dans le forum Interfaces Graphiques
    Réponses: 8
    Dernier message: 17/04/2007, 18h58
  3. [C#] Difficulté avec les catch
    Par Roach- dans le forum ASP.NET
    Réponses: 9
    Dernier message: 31/01/2006, 18h57
  4. [HTML]Pb avec les frames
    Par chpog dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 01/07/2005, 12h23

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