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 :

Hint et edit.enbled


Sujet :

Composants VCL Delphi

  1. #1
    Invité
    Invité(e)
    Par défaut Hint et edit.enbled
    Je voudrais savoir s'il est possible d'afficher le HINT d'un edit meme si celui-ci a sa propriete enabled a FAUX.
    Merci d'avance

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 13
    Points : 15
    Points
    15
    Par défaut
    Voici une solution à modifier selon tes besoins

    1) Associer à l'événement OnShowHint une nouvelle procédure
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      Application.HintShortPause := 50;
      Application.OnShowHint := NewOnShowHint;
    end;
    2) Définir la procédure qui ajuste la valeur du Hint
    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.NewOnShowHint(var HintStr: string; var CanShow: Boolean; var HintInfo: THintInfo);
    var
      TheWinControl: TWinControl;
     
    begin
      HintInfo.ReshowTimeout := 1000;
      TheWinControl := GetWinControlAtPos(HintInfo.HintControl as TWinControl, HintInfo.CursorPos);
      if TheWinControl.Name = PreviousWinControlName then
        HintStr := ''
      else if (TheWinControl is TEdit) and (TheWinControl.Hint <> '') and
         (NOT TheWinControl.Enabled) and TheWinControl.ShowHint then
        HintStr := TheWinControl.Hint;
      PreviousWinControlName := TheWinControl.Name;
    end;
     
    // où PreviousWinControlName est une variable globale de type string
    3) Utiliser une fonction déterminant le WinControl sous le curseur de la souris
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function GetWinControlAtPos(TheParent: TWinControl; ThePos: TPoint): TWinControl;
    var
      ChildControl: TControl;
     
    begin
      ChildControl := TheParent.ControlAtPos(ThePos, True, True);
      if (ChildControl <> nil) and (ChildControl is TWinControl) then
        Result := GetWinControlAtPos(ChildControl as TWinControl, ThePos)
      else
        Result := TheParent;
    end;
    Bonne chance.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Ok je vais essayé. Merci

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

Discussions similaires

  1. Borland JBuilder 7 Enterprise Edition multiLanguage "FR
    Par Fox_magic dans le forum JBuilder
    Réponses: 2
    Dernier message: 12/12/2002, 20h08
  2. Réponses: 2
    Dernier message: 23/10/2002, 14h38
  3. [Kylix] Télécharger Kylix 3 Open Edition
    Par RDM dans le forum EDI
    Réponses: 2
    Dernier message: 27/08/2002, 12h28
  4. Position du curseur dans Edit
    Par MrJéjé dans le forum C++Builder
    Réponses: 3
    Dernier message: 20/06/2002, 18h09
  5. Image et rich edit
    Par :GREG: dans le forum C++Builder
    Réponses: 2
    Dernier message: 13/05/2002, 12h33

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