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 :

Les panels de statusBar, mon cauchemar!


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut Les panels de statusBar, mon cauchemar!
    Salut vous autres

    Je sais, c'est bébête comme question: Quelqu'un pourait me dire comment ajouter du texte dans un panel d'une StatusBar?

    L'aide de Delphi n'est pas très explicite sur el sujet et je n'ai pas vu de titres dans la FAQ ou dans les Sources.

    Merci d'avance.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2004
    Messages
    310
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 310
    Par défaut
    Bonjour,

    Composant : StatusBar (onglet Win32)

    Citation Envoyé par La documentation de Delphi
    Si vous voulez afficher une seule chaîne de texte à la fois dans la barre d'état, définissez sa propriété SimplePanel par True et utilisez la propriété SimpleText pour contrôler le texte affiché dans la barre d'état.
    Citation Envoyé par La documentation de Delphi
    Vous pouvez aussi diviser une barre d'état en plusieurs zones de texte, appelées volets. Pour créer des volets, modifiez la propriété Panels avec l'inspecteur d'objets et spécifiez les propriétés Width, Alignment et Text de chaque volet à l'aide de l'éditeur de volets. La propriété Text de chaque volet contient le texte affiché dans le volet.
    Honnêtement, j'ai commencé à utiliser Delphi depuis peu et je trouve l'explication tout à fait explicite.

  3. #3
    Membre émérite
    Avatar de neilbgr
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    651
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 651
    Par défaut
    Simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StatusBar1.SimpleText := 'Ce que tu veux'
    ou bien

    après avoir créer un certain nombre de panels ( StatusBar1.Panels ) avec (ou sans) l'inspecteur d'objet, tu y accédes comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StatusBar1.Panels[i].Text := 'Autre texte...'

  4. #4
    Membre émérite
    Avatar de neilbgr
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    651
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 651
    Par défaut
    Je suis en parfaite harmonie avec balu

  5. #5
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Mouais, je vois que je dois m'expliquer.

    J'ai bien vu l'aide de Delphi. Et j'avais déjà fait comme neilbgr l'a dit.

    Avec SimpleText, ça marche impec. Ça a toujours marché d'ailleurs. Là où ça se corse, c'est avec des Panels.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StbMessages.Panels[0].Text := TimeToStr (laChrono);
    et il ne se passe rien! Pas d'affichage!

    Alors que:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StbMessages.SimpleText := TimeToStr (laChrono);
    (sans panels) fonctionne très bien.

    La variable laChrono est le résultat de la différence entre laDébut et laFin qui sont initialisées par la fonction GetTime l'une juste avant une boucle et l'autre juste après.

    Le but des panels, c'était d'en avoir un pour les messages et le chrono de fin; l'autre pour un progressBar. Je n'ai pas encore testé le progressBar, puisque je n'arrive pas à voir le texte!

  6. #6
    Membre Expert
    Avatar de Merlin
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2002
    Messages
    524
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Mars 2002
    Messages : 524
    Par défaut
    Citation Envoyé par zazaraignée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StbMessages.Panels[0].Text := TimeToStr (laChrono);
    et il ne se passe rien! Pas d'affichage!
    Moi je dirais tout bêtement : tu les as créés au moins les panels ?

  7. #7
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    B'soir

    Citation Envoyé par Merlin
    Moi je dirais tout bêtement : tu les as créés au moins les panels ?
    Mvoui!

    C'est pas la seule chose qui ne fonctionne pas bien... J'ai Borland Delphi 7 sous Win98. Faut p't'être que j'installe un Patch ?

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2004
    Messages
    310
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 310
    Par défaut
    J'ai fait des tests directement et ça fonctionne.

    Traces : valeur 2.75 (TDateTime)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    StatusBar1.Panels[0].Text := TimeToStr(2.75);
    StatusBar1.Panels[1].Text := 'Message à afficher';
    Je dirais de vérifier la valeur de ta variable laChrono.

  9. #9
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Salut balu

    Citation Envoyé par balu
    Je dirais de vérifier la valeur de ta variable laChrono.
    Moins d'une minute et parfois moins d'une seconde!

    Je vais essayer de mettre cette valeur dans une variable string et d'afficher cette variable.

    @+

  10. #10
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Non alors là, j'y comprends plus rien!

    J'ai passé la journée d'hier et encore aujourd'hui au collège j'ai tripoté mon code en promenant les marques de commentaires... Je vous jure que jusqu'ici, ça ne fonctionnait pas. Et maintenant que je vous ai tous dérangé avec mon problème, ça marche! Je sens que je vais devenir chèvre!

    Bê-hê-hê!

    Merci. Vous êtes tous bien chouette d'avoir pris le temps de me répondre.

  11. #11
    Membre chevronné
    Profil pro
    Inscrit en
    Août 2004
    Messages
    310
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 310
    Par défaut
    Tu devrais mettre la solution finale.

    Ça pourra aider les autres qui auraient le même problême.

  12. #12
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Le même code que plus haut. C'est bien pour ça que je n'y comprends rien!

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

Discussions similaires

  1. Récupérer les différentes températures de mon PC
    Par bronco dans le forum Assembleur
    Réponses: 2
    Dernier message: 29/07/2005, 09h35
  2. [C#] Travailler efficacement avec les panels dans une forme
    Par WwiloO dans le forum Windows Forms
    Réponses: 8
    Dernier message: 27/06/2005, 15h33
  3. [JAR] Inclure les external jar ds mon jar exec...
    Par doudine dans le forum Général Java
    Réponses: 4
    Dernier message: 21/01/2005, 14h12
  4. Dessin dans les panels d'un TStatusBar
    Par Amenofis dans le forum Composants VCL
    Réponses: 4
    Dernier message: 31/08/2004, 18h45
  5. Problem avec les *.AVI sur les panels
    Par NaDiA_SoFt dans le forum C++Builder
    Réponses: 3
    Dernier message: 31/08/2003, 22h50

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