PRESSE-PAPIERS & CIE

Signaler
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
-
cs_krzysiu
Messages postés
23
Date d'inscription
mardi 13 juillet 2004
Statut
Membre
Dernière intervention
3 septembre 2011
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/28960-presse-papiers-cie

cs_Delphiprog
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
25
Bonsoir Caribensila.

Je vois que tu as perçu l'intérêt de l'utilisation des routines de mise en flux de composants (WriteComponentResFile et son symétrique ReadComponentResFile). C'est aussi sympa de rappeler les sources et leurs auteurs. ;o)

Dans la procédure :
procedure TForm2.Sbt_CollerCompoClick(Sender: TObject);
begin
if Clipboard.HasFormat(CF_COMPONENT)then Clipboard.GetComponent(self,Panel1);
end;

Le fait d'avoir le format CF_COMPONENT ne permet pas d'être sur à 100 % que le composant contenu dans le presse-papiers soit connu de ton application. Le contenu du presse-papiers peut très bien provenir d'une autre application.
Il serait préférable de prendre quelques précautions, comme :
procedure TForm2.Sbt_CollerCompoClick(Sender: TObject);
var
Conteneur: TComponent;
begin
if Clipboard.HasFormat(CF_COMPONENT) then
begin
Conteneur := Clipboard.GetComponent(nil, nil);
if Conteneur is TConteneur then
with TConteneur(Conteneur) do
begin
// Traitement du contenu...
end;
end;
end;

Il faut au moins en vérifier le type.

En tous cas, c'est un excellent travail qui fait le tour des usages courants du presse-papiers de Windows et même plus.

Félicitations.
jmp77
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
4
C'est vrai que le presse papier est tellement commun que l'on n'y pense pas .

C'est une super source pour apprendre à mieux l'utiliser.

Merci Caribensila.

Pour moi ce sera un 10/10.
cs_Kenavo
Messages postés
702
Date d'inscription
vendredi 21 mars 2003
Statut
Membre
Dernière intervention
1 octobre 2009
1
"J'ai encore écrasé mes données dans le presse-purée" (attribué à Antoine-Augustin PARMENTIER, 1737-1813, pharmacien des Armées, vulgarisateur de la pomme de terre, tentant de compter les patates consommées en France en 1785)
Promis, je ne confondrais plus presse-papier et presse-purée !

Ken@vo
Caribensila
Messages postés
2527
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
16 octobre 2019
13
Kenavo>
Tu verras, ta purée n'en sera que meilleure et moins grumeleuse.

On va enfin pouvoir aller dîner chez Kenavo!

;)
cs_MAURICIO
Messages postés
2233
Date d'inscription
mardi 10 décembre 2002
Statut
Modérateur
Dernière intervention
15 décembre 2014
5
Quoi dire de + à part que c' est magnifique !
Je connaissait 70% de tout ça, mais la copie d' un bouton c' est absolument génial.
D' ailleurs , dans le onClick mettez la commande suivante
Left := Left + 10;
et ouvrez 2 instances ! Puis copier/coller le bouton d' une instance à une autre et tester le bouton.

Heuh, sinon j' ai comme une petite faim moi ...