Bonjour Jipété,
Ah là là, dans quelle galère tu es allé te fourrer
...
Déjà, avec Delphi, on obtient aussi quelque chose de très vilain (pour l'excellente raison donnée par Andnotor) :

[Delphi 10.2 - à gauche TImage, à droite TShape]
Ensuite, lors de la création de TShape, la brosse Brush est fixée à nil. Autant dire que tenter d'accéder au bitmap associé conduit à des erreurs
. Une ligne comme celle-ci suffit pour déclencher une erreur à l'exécution :
W := shape1.Brush.Bitmap.Width;
Surtout, quelle étrange idée que de vouloir manipuler le Bitmap d'un composant qui sert à dessiner des formes
. C'est tout ce qu'on lui demande et il le fait très bien, non ? Demande-t-on à un réfrigérateur de servir de chauffage ? Il chauffe, oui, mais c'est pour produire du froid, et il remplit bien cette tâche en temps normal... Vouloir faire dessiner directement à TShape des surfaces peintes selon un modèle de bitmap , sans dériver un composant enfant ou sans partir de TControlGraphic, est une idée que j'oublierais vite, mais bon, c'est un point de vue sans doute personnel...
Partager