cocowz
Messages postés89Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention25 février 2007
-
11 févr. 2007 à 20:59
ThWilliam
Messages postés418Date d'inscriptionmardi 3 janvier 2006StatutMembreDernière intervention26 novembre 2013
-
12 févr. 2007 à 13:05
Bonsoir,
J'ai un truc c'est que quand je lance le projet... puis dans la form je peux choisir la position de ma form (en bas a gauche ou droite ou en haut a gauche ou droite)
Mais quand je met ma form en bas (gauche ou droite), la form se cache un peu. sous la barre de tache...
Comment c'est possible pour faire que la form ne se cache pas... ??
Merci
Le code:
Case Tag of {et on change la position}
0 : Begin // Bottom Right
Self.Left := Left + (Width - Self.Width);
Self.Top := Top + (Height - Self.Height);
End;
1 : Begin // Bottom Left
Self.Left := Left;
Self.Top := Top + (Height - Self.Height);
End;
2 : Begin // Top Right
Self.Left := Left + (Width - Self.Width);
Self.Top := Top;
End;
3 : Begin // Top Left
Self.Left := Left;
Self.Top := Top;
A voir également:
Pour que la form ne se cache pas sous barre de tache
ThWilliam
Messages postés418Date d'inscriptionmardi 3 janvier 2006StatutMembreDernière intervention26 novembre 20134 11 févr. 2007 à 22:03
Salut,
Screen.Height renvoie la hauteur de l'écran en pixels, de laquelle tu décomptes les pixels pris par la barre des tâches (+- 30)
Cette valeur moins la hauteur de ta form te donne le point Top à ne pas dépasser.
Form1.Top:= Screen.Height - Form1.Height - 30;
Idéalement, il faudrait une fonction Windows pour connaître la hauteur de la barre des tâches, mais là je ne peux pas t'aider.
WhiteHippo
Messages postés1154Date d'inscriptionsamedi 14 août 2004StatutMembreDernière intervention 5 avril 20123 11 févr. 2007 à 22:56
Bonsoir,
Pour récupérer la hauteur de la barre des tâches, rien de bien compliqué :
function HauteurBarreDeTache : integer ;
var
hBarreDeTache : HWND ;
R : TRect ;
begin
Result := -1 ;
// Recherche de la fenêtre dont le nom de classe est "Shell_TrayWnd"
// qui n'est autre que le nom de la barre des tâches.
hBarreDeTache := FindWindow( 'Shell_TrayWnd', '' ) ;
if ( hBarreDeTache <> 0 ) then
begin
// Récupération du rectangle représentant la totalité de la barre des tâches
GetWindowRect( hBarreDeTache, R ) ;
// Bottom - Top car le 0 se trouve en haut de l'écran
Result := R.Bottom - R.Top;
end ;
end ;
Cordialement.
<hr />"L'imagination est plus importante que le savoir." Albert Einstein
cs_Loda
Messages postés814Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention30 juillet 20093 12 févr. 2007 à 09:38
salut,
je viens juste mettre mon grain de sel:
Delphi help:
Screen.WorkAreaRect
Use WorkAreaRect to determine the coordinates of the usable space on the primary monitor. The usable work space is the surface of the primary monitor with the space occupied by the task bar and any tool bars subtracted off.
cad, partie utile de l'écran princicpal. (sans task bar et autres.)
bon code,
Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Vous n’avez pas trouvé la réponse que vous recherchez ?
ThWilliam
Messages postés418Date d'inscriptionmardi 3 janvier 2006StatutMembreDernière intervention26 novembre 20134 12 févr. 2007 à 13:05
@ Loda : je viens de tester ScreenSnap, cela donne un effet "aimant" un peu comme les prog de mise en page, mais cela n'interdit pas de "sortir de l'écran" si tu continues le déplacement de la form.