Accueil > Forum > > > > Une image en background
Une image en background
lundi 22 mars 2004 à 19:36:36 |
Une image en background

Eric84
|
Salut J'aimerais savoir comment mettre une image en background sur ma listview (la listview est sur une image plus grande, et il faudrais que la section caché devienne le background en couleur plus pale) J'ai vu sur le forum une question semblable qui parlais de TRect mais je sais pas trop comment m'y prendre. Quelqu'un peut m'aider ? Merci
|
|
mercredi 24 mars 2004 à 17:47:15 |
Re : Une image en background

Kenavo
|
Salut, Tu peux essayer ça
procedure TForm1.ListView1CustomDraw(Sender: TCustomListView; const ARect: TRect; var DefaultDraw: Boolean);
var rect : TRect; Image : TImage; i,j : Integer; col : TColor ;
procedure eclaire(var col : TColor); var r,v,b : byte; begin r:=col mod $100; // extraction du rouge v:= ( col shr 8 ) mod $100; // ...du vert b:= ( col shr 16 ) mod $100; // ... du bleu r:= (r+$ff) div 2; // mélange avec du blanc v:= (v+$ff) div 2; b:= (b+$ff) div 2; col := r + $100 * v + $10000 * b; // nouvelle couleur end;
begin Rect.Top := Listview1.Top+2; Rect.Bottom := Rect.Top + Listview1.ClientHeight ; Rect.Left := Listview1.Left+2; Rect.Right := Rect.Left + Listview1.ClientWidth ; Image := TImage.Create(self); Image.Width := Arect.Right-Arect.Left+1; Image.Height := Arect.Bottom-Arect.Top+1; Image.Canvas.CopyRect(ARect,Image1.Canvas,Rect); for j:=0 to Arect.Bottom-1 do for i:=0 to Arect.right-1 do begin col := Image.Canvas.Pixels[i,j]; eclaire(col); Image.Canvas.Pixels[i,j] := col; end; ListView1.Canvas.CopyRect(Arect,Image.Canvas,ARect); Image.Free end;
Explications :
-Rect est le rectangle de l'image de fond (Image1) derrière le Listview -On copie cette zone dans Image (TImage temporaire) -Pixel par Pixel on modifie les couleurs d'Image (fonction Eclaire) -On recopie Image modifiée dans le canvas de ListView
J'ai pas mieux !
Kenavo
Code, Code, Codec !
|
|
jeudi 25 mars 2004 à 04:29:42 |
Re : Une image en background

Eric84
|
Ouais ca fonctionne, sauf, c'est normal qu'on puisse pas utiliser les jpg ? Il ne semble accepter que les bitmap.
Et c'est normal si ca semble lagger lorsqu'on clique sur un élément de la listview ? (licone cliquer disparais pendant 1-2 seconde et réapparais par la suite)
Merci
|
|
jeudi 25 mars 2004 à 12:03:39 |
Re : Une image en background

Kenavo
|
Ben oui,
La fonction CopyRect ne fonctionne pas avec les Jpeg.
Le temps doit provenir des appels à la fonction Pixels qui est très lente. tu peux essayer en virant les boucles for
Si quelqu'un connait un truc !
Kenavo
Code, Code, Codec !
|
|
vendredi 26 mars 2004 à 04:11:11 |
Re : Une image en background
|
samedi 9 avril 2005 à 09:21:07 |
Re : Une image en background

raybane
|
Salut tout le monde, c'est mon premier post, en espérant que ca serve!
procedure TForm1.ListView1CustomDraw(Sender: TCustomListView;
const ARect: TRect; var DefaultDraw: Boolean);
var jpg :TJpegImage;
Bmp :TBitMap;
begin
//création des images
Jpg := TJpegImage.Create;
Bmp := TBitMap.Create;
Try
// on indique le chemin du jpg
Jpg.LoadFromFile('D:\day.jpg');
//on adapte la taille du bmp a celui du listview
Bmp.Width := Listview1.Width;
Bmp.Height := Listview1.Height;
//on étire l'image du bmp
Bmp.Canvas.StretchDraw(Bmp.Canvas.ClipRect,Jpg);
Jpg.Assign(Bmp);
//on assigne l'image au listview
ListView1.Canvas.CopyRect(Arect,Bmp.Canvas,ARect);
Finally
//on libere les ressources
Jpg .Free;
Bmp .Free;
end;
|
|
samedi 10 septembre 2005 à 15:36:48 |
Re : Une image en background

lol_brossier
|
Ca marche tres bien ce code mais avez vous une idée pour que l'mage de fond soit redessiné a chaque changement de dimension de la fenetre ? Parce que pour moi si je modifie la taille de la fenetre ca modife mon image et je voudrais donc qu'elle soit redessiné apres chaque mouvement. Merci
|
|
Cette discussion est classée dans : image, listview, background
Répondre à ce message
Sujets en rapport avec ce message
Listview background image [ par magic123 ]
Salut a tous, Je cherche depuis un moment comment faire pour avoir une image fixe en background dans une TListview... Y'a-t-il une ame charitable pour
listview 2 images dans la meme colonne ? [ par dav999 ]
Salutje voudrais savoir s'il est possible d'afficher plusieurs images dans une colonne de ma listview, pour le moment j'utilise un imagelist et la pro
Image dans une DBGrid [ par rolea ]
Je cherche un moyen d'afficher une image dans la ligne de titre d'un DBGrid.Exemple, je fais une requête avec un tri, et je veux ensuite afficher une
HELP!!! Imprimer image + Autre [ par lorrant ]
Bonjour,Je suis débutant en programmation, et j'ai réalisé un petit programme pour la boîte où je bosse (qui n'a rien à voir dans la programmation...)
Comment ajouter une image BMP dans un fichier RTF [ par patkiller ]
BonjourJe suis un débutant en Delphi. J'ai fait un logiciel destiné à tenir un journal intime.Le logiciel sauvegare le contenu du journal dans un fich
Probleme mouvement d une image [ par hepho ]
Salut,Alors voila mon probleme :Avec un timer regler a 200ms, je bouge le left d une image de 5 a chaque intervalle ( jespere je me suis fait comprend
Image ds 1 TreeView [ par jlg75 ]
j'associe des images aux nodes d'1 TreeView.Pb: modifier l'image qd 1 (ou plusieurs si multiselect) node est selecté . La modif de ImageIndex du node
Affichage rapide d'image [ par zorg63 ]
Désolé pour le tire qui n'est pas très clair, je ne savais pas comment résumer mon problème. Le voici :Je viens de poster une source utilisant l'affic
Images dans StringGrid [ par DAR ]
Dans la 1ere colonne de ma StringGrid je veux mettre une image différente sur chaque ligne (fonction du contenu d'une autre colonne). Les Images sont
image prise par une webcam [ par ludou ]
bonjour voilà je cherche comment on pourrait améliorer la qualités d'une image prise par une webcam et comment on pourrait voir si elle est trop fonçé
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
Comparez les prix

HTC Magic
Entre 429€ et 429€
|