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 :

Récupérer un composant en librairie JEDI


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut Récupérer un composant en librairie JEDI


    Je me demandais une chose suite à une galère pas possible : serait-il possible suivant licence et aspect technique le la JEDI, de "retirer" simplement par exemple le compo JvFontComboBox de la librairie JEDI ?

    Car cette bibio comporte des centaines de compo, mais combien en utilisons-nous réellement ?

    Cela permettrait ensuite une grande agilité lors de migration ou changement de version de Delphi

    Merci de vos commentaires et idées,

    DS7

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 938
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 938
    Par défaut
    Moins tu compteras sur des composants externes, plus tu seras "agile". A part des choses compliquées à la Fast Report, je n'utilise aucun composant tiers.

    Ce que tu souhaites avec ce JvFontComboBox se fait simplement avec un TComboBox dessiné manuellement (Style = csOwnerDrawFixed) :
    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
    16
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      ComboBox1.Items.Assign(Screen.Fonts);
    end;
     
    procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
    begin
      with ComboBox1, Canvas do
      begin
        var FontName := Items[Index];
        Font.Name    := FontName;
     
        FillRect(Rect);
        TextRect(Rect, FontName, [tfVerticalCenter]);
      end;
    end;

  3. #3
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    Andnotor

    Tu disais :
    Moins tu compteras sur des composants externes, plus tu seras "agile".

    Tu prêches un converti !

    Mais cette JEDI est tellement alllllllléchante...

    Oupsssss ce soir je vais tranquillement tenter de correctement lancer ton code.

    Ta réponse me parait trop belle pour être vraie, whaouhhhh

    Merci, à ce soir,

    DS7

  4. #4
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    En testant sous mon Delphi 7, j'ai cette ligne qui ne passe pas du tout :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     var FontName := Items[Index];
    Ce serait sur mon D10.4 que j'ai viré de rage sans doute que cela aurait passé.

    Si ton astuce fonctionne sous D7, ce serait super !

    Cela me permettrait sans doute de voir les choses autrement.

    DS7

  5. #5
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 938
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 938
    Par défaut
    Déplace la déclaration.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
    var 
      FontName :string;
    begin
      with ComboBox1, Canvas do
      begin
        FontName  := Items[Index];
        Font.Name := FontName;
     
        FillRect(Rect);
        TextRect(Rect, FontName, [tfVerticalCenter]);
      end;
    end;

  6. #6
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    C'est mieux mais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TextRect(Rect, FontName, [tfVerticalCenter]);
    Type incompatible : Integer et String

    J'ai transtypé mais :Nom : oupssss.gif
Affichages : 106
Taille : 6,9 Ko

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 26/05/2007, 12h43
  2. Réponses: 13
    Dernier message: 08/07/2006, 12h42
  3. Utilisation de la librairie JEDI ...
    Par HaldriX dans le forum Composants VCL
    Réponses: 7
    Dernier message: 04/03/2006, 09h38
  4. Récupérer les composants visuels de toute l'application
    Par sessime dans le forum Composants VCL
    Réponses: 4
    Dernier message: 27/02/2006, 09h18

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