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

Contribuez Pascal Discussion :

Exemple de CoolBar


Sujet :

Contribuez Pascal

  1. #1
    Membre éclairé
    Avatar de FOCUS77
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Par défaut Exemple de CoolBar
    Bonjour à tous.

    On va proposer un mécanisme de fonctionnement d'une 'Coolbar' contenant des 'ToolBar' et des 'BCButton' de l'onglet 'BGRA Controls'.

    L'avantage d'une 'CoolBar' est qu'elle puisse contenir et gérer plusieurs barres d'outils(jumelles) simultanément.

    Les 'BCButton' disposent d'une richesse graphique considérable.

    1) On ajoute à une fiche une 'CoolBar1' (FixedOrder:True, FixedSise:True).

    2) On dépose sur cette 'CoolBar1' quatres 'ToolBar' (qui portent des 'BCButton'), la première (ToolBar1) est la barre 'maîtresse' toujours apparente,

    qui gère par des 'BCButton' codés, les trois autres barres, dont une seule peut apparaitre à la fois.

    3) On va agrandir la hauteur de 'CoolBar' de telle manière que toutes les 'ToolBar' apparaissent.

    4) On clique sur CoolBar1/Band/TCoolBand et on configure leurs propriétés:

    * control:ToolBarx FixedSize:true MinHeight:n (n entier p.ex 35).

    5) On configure maintenant les 'ToolBar':

    * Constraints/MinHeight:n (35) ButtonHeight:n-1 (34) Transparent:True EdgeInner:esnone EdgeOuter:esnone.

    *On diminue la hauteur de 'CoolBar1' de telle manière qu'ils apparaissent les deux premières bandes uniquement.

    6) On ajoute sur 'ToolBar1' trois bouttons 'BCButton'(AutoSize:False width:qq) qui gère chacun une 'Coolband' de 'CoolBar1' à l'aide d'une procédure:


    1/Déclaration de la procédure.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    interface
    uses
      Classes, SysUtils, FileUtil, BCButton, Forms, Controls, Graphics, Dialogs,
      ComCtrls;         
      Procedure Bande(Band:TCoolBand); 
     
    implementation 
     
    procedure Bande(Band:TCoolBand);
    begin
    Form1.CoolBar1.Bands[1].Visible:=False; //Band[0] toujour visible, corresponde à la première barre d'outils.
    Form1.CoolBar1.Bands[2].Visible:=False;
    Form1.CoolBar1.Bands[3].Visible:=False;
    Band.Visible:=True ;
    end;
    2/Initialisation de la largeur des barres d'outils.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TForm1.FormActivate(Sender: TObject);
    begin
     
      Toolbar1.Constraints.MaxWidth:=Coolbar1.Width-5  ;
      Toolbar2.Constraints.MaxWidth:=Coolbar1.Width-5  ;
      Toolbar3.Constraints.MaxWidth:=Coolbar1.Width-5  ;
      Toolbar4.Constraints.MaxWidth:=Coolbar1.Width-5  ;
     
      Bande(Form1.CoolBar1.Bands[1]);
    end;

    3/Les trois BCButtons.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    procedure TForm1.BCButton1MouseEnter(Sender: TObject);
    begin
      Bande(Form1.CoolBar1.Bands[1])
    end;
     
    procedure TForm1.BCButton2MouseEnter(Sender: TObject);
    begin
      Bande(Form1.CoolBar1.Bands[2])
    end;
     
    procedure TForm1.BCButton3MouseEnter(Sender: TObject);
    begin
      Bande(Form1.CoolBar1.Bands[3])
    end;
    merci à tous.

  2. #2
    Membre éclairé
    Avatar de FOCUS77
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Par défaut
    Bonjour à tous.

    A fin d'assurer un bon fonctionnement de l'exemple précédent, j'ai changé le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.FormActivate(Sender: TObject);
    begin
       Bande(Form1.CoolBar1.Bands[1]);
    end;
    par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.FormCreate(Sender: TObject);
    begin
        Bande(Form1.CoolBar1.Bands[1]);
    end;
    et le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.FormActivate(Sender: TObject);
    begin
      Toolbar1.Constraints.MaxWidth:=Coolbar1.Width-5  ;
      Toolbar2.Constraints.MaxWidth:=Coolbar1.Width-5  ;
      Toolbar3.Constraints.MaxWidth:=Coolbar1.Width-5  ;
      Toolbar4.Constraints.MaxWidth:=Coolbar1.Width-5  ;
    end;
    par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.FormActivate(Sender: TObject);
    begin
      Toolbar1.Constraints.MinWidth:=Coolbar1.Width-5  ;
      Toolbar2.Constraints.MinWidth:=Coolbar1.Width-5  ;
      Toolbar3.Constraints.MinWidth:=Coolbar1.Width-5  ;
      Toolbar4.Constraints.MinWidth:=Coolbar1.Width-5  ;
    end;
    merci à tous.

Discussions similaires

  1. Checrche Exemple d'application C++ Builder - MySQL
    Par pcatric dans le forum C++Builder
    Réponses: 12
    Dernier message: 11/11/2002, 23h51
  2. [VB6] Lancer un service, par exemple Sql Server
    Par fea dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 16/10/2002, 14h07
  3. recherche exemple simple pour corba en c++
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 06/05/2002, 11h29

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