jesaipa_1
Messages postés63Date d'inscriptiondimanche 8 janvier 2006StatutMembreDernière intervention16 mai 2007
-
8 janv. 2006 à 01:12
jesaipa_1
Messages postés63Date d'inscriptiondimanche 8 janvier 2006StatutMembreDernière intervention16 mai 2007
-
8 janv. 2006 à 20:43
slt tout le monde, je suis actuellementen stage. On me demande de modifier certains parametre de la fonction panel cad a la place d'avoir un panel rectangulaire il faut que je puisse changer les dimensions du panel o lieu d'avoir un panel rectangulaire, avoir un panel rond ou sous la forme d'un losange.
cs_thebigboss
Messages postés216Date d'inscriptionjeudi 30 janvier 2003StatutMembreDernière intervention12 avril 20172 8 janv. 2006 à 10:42
J'ai déjà testé ce conseil trouvé sur le forum concernant des Form peut-être que tu peux essayer de l'appliquer à un panel en remplacant this par le nom de ton panel....:
Essaye avec une bmp et les parties qui seront transparente, tu les mets en rouge !!!... Puis :
// Bitmap sans compression avec une couleur de fond unique !
// On peut utiliser Bitmap.LockBits pour accélérer le traitement.
private Region MakeRegionFromBitmap( Bitmap bitmap, Color transparency )
{
if ( bitmap == null )
throw new ArgumentNullException( );
int width = bitmap.Width;
int height = bitmap.Height;
GraphicsPath path = new GraphicsPath( );
for ( int y = 0; y < height; y++ )
{
for ( int x = 0; x < width; x++ )
{
if ( bitmap.GetPixel( x, y ) != transparency )
{
path.AddRectangle( new Rectangle( x, y, 1, 1 ) );
}
}
}
Region region = new Region( path );
path.Dispose( );
path = null;
return region;
}
// Permet de deplacer la forme sans barre de titre.
protected override void WndProc( ref Message m )
{
base.WndProc( ref m );
if ( m.Msg == WM_NCHITTEST )
{
if ( ( int )m.Result == 1 )
{
m.Result = ( IntPtr )2;
}
}
}