Headercontrol affichage des hint pour les section [Résolu]

Signaler
Messages postés
120
Date d'inscription
mardi 8 juillet 2008
Statut
Membre
Dernière intervention
1 décembre 2010
-
cs_cantador
Messages postés
4716
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
-
Bonsoir, je n'arrive pas à afficher ds infos bulles pour les divers sections du control HeaderControl. merci,

10 réponses

Messages postés
120
Date d'inscription
mardi 8 juillet 2008
Statut
Membre
Dernière intervention
1 décembre 2010
1
Une des solutions possibles, mais peu commode:

procedure TForm1.HeaderControl1MouseMove(Sender: TObject;
Shift: TShiftState; X, Y: Integer);
var
pt: TPoint;
begin
pt.X := HeaderControl1.Left ;
pt.Y:= HeaderControl1.Top ;
Pt := form1.ClientToScreen(Pt);
Pt.x := Pt.x+X;
Pt.y := Pt.y+Y;
HeaderControl1.ShowHint := true;
label4.Caption :=inttostr(pt.X);
if ((pt.X >Pt.x-X )and (pt.X 540) and (pt.X <630 )) then
begin
HeaderControl1.Hint :='BBBBBB';
.... pour les sections suivantes
end;
end;
Messages postés
4716
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
11
bonsoir,

dans quel composant ?

cantador
Messages postés
120
Date d'inscription
mardi 8 juillet 2008
Statut
Membre
Dernière intervention
1 décembre 2010
1
Le composant de la palette win32, sa position par défaut est entre le listeview et le statusbar.
Messages postés
4716
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
11
La propriété hint existe mais pour le composant lui-même mais pas pour les sections construites..
L'info-bulle est-elle bien utile à cet endroit puisque tu peux mettre un texte complet dans la section ?
Sinon, il te faut chercher un autre composant (dans les JEDI par exemple
la dernière version vient de sortir...)

Le TcxGrid (non free) possède cette propriété.

cantador
Messages postés
120
Date d'inscription
mardi 8 juillet 2008
Statut
Membre
Dernière intervention
1 décembre 2010
1
Merci Cantador, mais la possibilité d'extraire les hints existe belle et bien, sans aller chercher dans les nouvelles versions! puisque l'evenement click sur les sections et détecté,...
Messages postés
4716
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
11
Oui , mais un hint c'est pas un clic, c'est plutôt OnMouseMove !
Tu pourrais détecter les coordonnées de la souris et tester si tu es dans la section et changer à cet instant le Hint.
voir->> Application.ActivateHint(Mouse.CursorPos);

et avec un TStringGrid ?

cantador
Messages postés
4716
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
11
vite fait sur le gaz :

procedure TForm1.HeaderControl1MouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
  if (X > 0) and
    (X < HeaderControl1.Sections[0].Width) then
    HeaderControl1.Hint := 'toto'
  else
    HeaderControl1.Hint := 'tata';
  Application.ActivateHint(Mouse.CursorPos);
end;

bonyapluskaarrangéletout..

tu nous montreras le final

cantador
Messages postés
120
Date d'inscription
mardi 8 juillet 2008
Statut
Membre
Dernière intervention
1 décembre 2010
1
Entièrement d'accord, c'est une possibilité, mais c'est du stroumph maison, Merci Cantador,... et c'est mieux que rien.
Messages postés
4716
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
11
ah mais ici, on fait tous les genres...
et c'est comme dans le commerce, quand on ne pas entrer par la porte on passe par la fenêtre..

cantador
Messages postés
4716
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
11
oui, tu peux compléter en créant une fonction qui renvoie le string du hint en rapport avec
l'index de l'item..


cantador