Déplacer n'importe quel élément visible au moment de l'exécution


Ce code permet de déplacer n'importe quel contrôle au moment de l'exécution, même non twincontrol a des descendants.

assurez-vous que ExtCtrls est dans votre clause uses.
Puis définissez l'événement OnMouseDown de vos contrôles pour le code suivant.

procedure TForm1.MoveControl(Sender: TObject Button: TMouseButton
Shift: TShiftState X, Y: Entier)
var
TempPanel : TPanel
Contrôle : TControl
begin
//Libération de la MOUSEDOWN l'état
ReleaseCapture
si l'Expéditeur est twincontrol a ensuite
//le Composant a une Poignée pour le déplacer directement
twincontrol a(l'Expéditeur).Effectuer(WM_SYSCOMMAND,$f019,0)
else
//le Composant n'a pas de poignée pour le déplacer dans un TPanel

Contrôle := TControl(Expéditeur)
TempPanel := TPanel.Create(Self)
avec TempPanel ne
begin
//Remplacez le composant avec TempPanel
Caption := '
BevelOuter := bvNone
SetBounds(de Contrôle.De Gauche,De Contrôle.En haut,
de Contrôle.Largeur De Contrôle.Hauteur)
Parent := Contrôle.Parent

//Mettre à notre contrôle dans le TempPanel
de Contrôle.Parent := TempPanel

//Déplacer TempPanel avec le contrôle à l'intérieur
Exécuter(WM_SYSCOMMAND,$F019,0)

//Mettre le composant de laquelle le groupe a été abandonné
de Contrôle.Parent := Parent
de Contrôle.À gauche := Gauche
de Contrôle.Haut := Top
fin
enfin
TempPanel.Gratuit
fin
fin









Deplacer n'importe quel element visible au moment de l'execution


Deplacer n'importe quel element visible au moment de l'execution : Plusieurs milliers de conseils pour vous faciliter la vie.


Ce code permet de deplacer n'importe quel controle au moment de l'execution, meme non twincontrol a des descendants.

assurez-vous que ExtCtrls est dans votre clause uses.
Puis definissez l'evenement OnMouseDown de vos controles pour le code suivant.

procedure TForm1.MoveControl(Sender: TObject Button: TMouseButton
Shift: TShiftState X, Y: Entier)
var
TempPanel : TPanel
Controle : TControl
begin
//Liberation de la MOUSEDOWN l'etat
ReleaseCapture
si l'Expediteur est twincontrol a ensuite
//le Composant a une Poignee pour le deplacer directement
twincontrol a(l'Expediteur).Effectuer(WM_SYSCOMMAND,$f019,0)
else
//le Composant n'a pas de poignee pour le deplacer dans un TPanel

Controle := TControl(Expediteur)
TempPanel := TPanel.Create(Self)
avec TempPanel ne
begin
//Remplacez le composant avec TempPanel
Caption := '
BevelOuter := bvNone
SetBounds(de Controle.De Gauche,De Controle.En haut,
de Controle.Largeur De Controle.Hauteur)
Parent := Controle.Parent

//Mettre a notre controle dans le TempPanel
de Controle.Parent := TempPanel

//Deplacer TempPanel avec le controle a l'interieur
Executer(WM_SYSCOMMAND,$F019,0)

//Mettre le composant de laquelle le groupe a ete abandonne
de Controle.Parent := Parent
de Controle.A gauche := Gauche
de Controle.Haut := Top
fin
enfin
TempPanel.Gratuit
fin
fin


Déplacer n'importe quel élément visible au moment de l'exécution

Déplacer n'importe quel élément visible au moment de l'exécution : Plusieurs milliers de conseils pour vous faciliter la vie.
Recommander aux amis
  • gplus
  • pinterest

Messages récents

Commentaire

Laisser un commentaire

évaluation