Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

COMPOSANT POUR DÉPLACER ET REDIMENSIONNER LES AUTRES À L'EXÉCUTION


Information sur la source

Catégorie :Composants Classé sous : Composant, Movable, Resizeable Niveau : Débutant Date de création : 04/03/2008 Date de mise à jour : 04/03/2008 16:17:29 Vu / téléchargé: 2 026 / 218

Note :
9 / 10 - par 2 personnes
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

Description

Ceci est encore une version d'un composant pour déplacer et redimensionner les autres à l'exécution.
J'avais besoin d'un composant faisant ceci facilement, j'ai trouvé la source de "bubulemaster", écrit par MARTINEAU Emeric ... mais ... pas assez fiable !

J'ai donc pris le parti de récrire le composant à partir de cette source, mais en y ajoutant ce qui me manquait :
- départ depuis un TComponent
- gestion d'un TControl et non d'un TWinControl (pour le TLabel par exemple)
- suppression des problèmes d'allocations/restitution
- nouvelles propriétés : BringToFront et Redrawing pour gestion plus fine de l'affichage
- nouvel évènement : OnMove pour retour du déplacement
- amélioration de la lisibilité (du moins me semble t'il) et optimisation du code

A noter en plus un projet de démo qui permet de compiler et d'exécuter sans installer le composant (je sais que, comme moi, nombre d'entre vous hésitent avant de tester de nouveaux composants), auquel j'ai ajouté un .dcr pour avoir une jolie icone !
 

Conclusion

En attente de vos commentaires. Merci d'avance.
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

04 mars 2008 16:06:00 :
.
04 mars 2008 16:17:29 :
Désolé, je me suis enbrouillé dans les fichiers à mettre dans la première version !

Commentaires et avis

signaler à un administrateur
Commentaire de MAURICIO le 04/03/2008 16:46:50 9/10

Salut,

tu avais mon compo:
http://www.delphifr.com/codes/TCYRESIZER-BOUGER-REDIMENSIONNER-VOS-CONTROLS-RUNTIME_31365.aspx

Il gère les petits carrés (tes panels) de façon plus élégante. mais c' est un bon compo!

A+

signaler à un administrateur
Commentaire de Fred_Ca_Pulse le 04/03/2008 18:06:05

Salut Mauricio

Effectivement tu as raison, j'avais même déjà testé ton compo à l'époque ( je m'en souvenais même plus ) : il marche super bien ... sauf un bug de dessin sur les TLabel.

Je viens de tester à nouveau ton TcyResizer : j'ai toujours le même bug  en ayant changé de machine et de système ( Vista maintenant ).
Ce bug provient réellement de l'activation de la vérification des limites sur la ligne 233 - FControl.Perform(WM_PAINT, DC, 0) dans la procédure PAINT_OTHER_CONTROLS.
Voici une proposition de modification qui fonctionne pour moi :
{$IFOPT R+}
  {$R-}
  FControl.Perform(WM_PAINT, DC, 0);
  {$R+}
{$ELSE}
  FControl.Perform(WM_PAINT, DC, 0);
{$ENDIF}

Bon, bref, j'aurais effectivement pu me passer de réécrire mon composant ... tant pis, il est là maintenant et j'espère qu'il pourra servira aux débutants, peut-être un peu perdus dans ton code de niveau plus avancé.

A+

signaler à un administrateur
Commentaire de Fred_Ca_Pulse le 04/03/2008 18:09:05

Un oubli ... qui ne nuit pas au fonctionnement ... mais c'est mieux pour tester.

procedure TForm1.FormCreate(Sender: TObject);
begin
     MoveAndResize1 := MoveAndResize.TMoveAndResize.Create( Self );
     // Oubli ... en création dynamique du composant ... rien n'est stocké !!!
     MoveAndResize1.OnMove := MoveAndResizeMoveOrResize;
     MoveAndResize1.OnResize := MoveAndResizeMoveOrResize;
end;

Désolé

signaler à un administrateur
Commentaire de Delphiprog le 09/03/2008 22:10:11 administrateur CS

Comme ça, on a le choix.
Bravo à tous les deux.

signaler à un administrateur
Commentaire de The Jos le 10/03/2008 20:11:28

Bounjour à tous

Pour info il y a longtemps j'avais fait un composant comme ça qui permettait de redimensionner et de déplacer n'importe quel contrôle a l'éxcécution et sans clipping. Je vous donne le lien http://herea.soft.free.fr/Unites.htm le compo s'appelle TMRControl. Y a un projet exe a l'intérieur pour démo.

A+

http://herea.soft.free.fr (racine du site)

signaler à un administrateur
Commentaire de Bacterius le 18/03/2008 00:19:48 9/10

Bonjour,
faut pas être jaloux the Jos :p
Cette source je la trouve très bien, 9/10 !
Moi je ne comprends pas trop comment faire un composant... ne peut-on pas en faire un entièrement nouveau ? sans rien ? faut-il choisir un type ancêtre ? ...
Enfin bon :)

Cordialement, Bacterius !

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Pb : Le composant internet de delphi [ par infohelp ] Bonjour je cherche le composant similaire d'acces a internet de visual basic (winsock) mais le meme avec les meme fonctions et qui prenent les proxy c Utiliser TIdMappedPortTCP """Composant Indyserver""" [ par PsyckoHia ] SaLuT je cherche a utiliser TIdMappedPortTCP qui se trouve dans Indy seveur , Est ce que qq'un peux me donner un exemple simple,à part celui qui est Composant clientsocket [ par MeuhMeuh ] Bonjour,Je voudrais savoir s'il est possible de positionner des FLAGS (RST,FIN,OOB...) quand on envoie des données avec le composant Client Socket, si Programme console et composant database [ par VTCFMAN ] Peut-on utiliser les composants Database dans un programme console avec ou sans module de données ?. Si non existe-t-il des des librairies permettant URGENT : problème d'installation de composant [ par Henri ] problème d'installationBonjour,Je vous remercie de résoudre le problème suivant :Je voudrais installer un composant téléchargé sans son fichier *.pas composant webbrowser [ par vib ] Bonjour, Je débute en Delphi.Je désire récupéré le contenu d'une page Html à partir du composant Webbrowser.J'ai utilisé ce composant avec VB, proprié TNMPOP3 composant [ par Steph ] j'ai essayé d'utiliser le composant TNMPOP3 (FastNet) pour afficher le nombre de messages reçus (non lus ?) dans ma boite aux lettres Outlook.Pour cel Création dynamique de composant [ par Amadeus ] Comment créer dynamique des contrôle TImage ?Je voudrais créer sur une Form autant de TImage que d'image se trouvant dans un répertoire donné. Comment composant de l'explorateur [ par vib ] Bonjour,Quelqu'un pourrit il me dire ou trouver le composant qui liste les fichiers dans l'explorateur et qui permet d'un simple clic sur l'entête de propriété d'un composant à partir de 'components' [ par vib ] Je désire modifier les propriétés de n'importe quel composant sur une feuille.Je me suis servi de la propriété 'components'de la feuille avec l'index


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.