Delphi6 graphisme

Delphi6 graphisme - Delphi/Pascal - Programmation

Marsh Posté le 08-11-2003 à 14:58:12    

Bonjour
Une petite question sous Delphi6
 
Je voudrais pouvoir trvailler sur une zone memoire, que je souhaiterai faire afficher sous forme de graphisme...
 
En fait acceder dans un graphique a cjaque octet, directement dans une zone memoire pour que ce soit plus rapide.
 
Quels moyen dois-je employer?
/Merci d'avance*

Reply

Marsh Posté le 08-11-2003 à 14:58:12   

Reply

Marsh Posté le 11-11-2003 à 02:53:01    

Que veux-tu savoir ? Comment dessiner le graphique ?

Reply

Marsh Posté le 11-11-2003 à 11:19:38    

Tu peux utiliser un TBitmap que tu copies ensuite à l'écran.
Sinon via les fonctions de l'API Windows il doit y avoir des trucs pour dessiner en mémoire et ensuite tout balancer à l'écran.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 11-11-2003 à 11:54:40    

Je cherche un moyen simple en delphi de faire un dessin dans une zone particuliere de l'ecran directement en memoire:
--> comme si je disais: utiliser des peek et poke pour afficher un point a l'ecran, EN FONCTION DE SON ADRESSE MEMOIRE

Reply

Marsh Posté le 11-11-2003 à 13:38:23    

Heu ... on n'est plus en DOS hein :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 11-11-2003 à 13:52:56    

Justement, c'etait le bon temps, on faisait tout ce qu'on voulait avec un PC
Maintenant ... pfeuuuffff...
On a meme du mal a installe un msdos sur un P4 3Ghz!
 
Pas d 'autre idees pour le graphisme en memoire?

Reply

Marsh Posté le 18-12-2003 à 14:49:07    

y a surement une api qui permet de scrutter les adrs memoires ,les antivirus le font bien ,ensuite donne une couleur en fonction de sa valeur ne donnerai pas grand chose d'utile ,tout depend de son emplacement ,et aujourd'hui avec la gestion en mode protegé ,il n'y a plus d'emplacement préreservé pour une utilisation specifique (c'est l'os qui gere sa soupe comme il le veut)

Reply

Marsh Posté le 18-12-2003 à 15:55:17    

bon on peux, c'est d'ailleurs tres rapide mais un peu chiant
metons que tu veux dessiner dans le TImage img, il faut deja que tu donne une taille a ton image comme ca:
img.Picture.Bitmap.Width:=320;
img.Picture.Bitmap.Height:=200;
ensuite il faut passes l'img en 32 bits comme ca:
img.Picture.Bitmap.PixelFormat:=pf32bit;
et la tu peux enfin récupérer l'adresse de la zone memoire comme ca:
Addr:=img.Picture.Bitmap.ScanLine[img.Picture.Bitmap.Height-1];
chaque entier 32Bits dans cette zone représente un pixel au format ABVR8888 (8 bits d'alpha, 8 bits pour le bleu,...) et la zone commence au pixel en bas a gauche de ton image pour finir en haut a droite
et apres avoir fais des modifs dans la zone, pour réafficher les modifs tu as plus qu'a faire:
img.Invalidate;

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed