that looks more like VB than c#
I think you will have to fresh out the last stub for OnPaintBackground
with painting you GB image
Imports System
Imports System.Windows.Forms
Public Class TransparentControl
Inherits Control
Private Const WS_EX_TRANSPARENT As Int32 = &H20
Public Sub New()
Me.SetStyle(ControlStyles.SupportsTransparentBackC olor, True)
Me.UpdateStyles()
Me.BackColor = Color.Transparent
End Sub
Protected Overrides ReadOnly Property CreateParams() As CreateParams
Get
Dim cp As CreateParams = MyBase.CreateParams
cp.ExStyle = cp.ExStyle Or WS_EX_TRANSPARENT
Return cp
End Get
End Property
Protected Overrides Sub OnPaintBackground(ByVal e As PaintEventArgs)
' fresh out this partto pain the gb image
End Sub
a primitive example is from the vb help
Private Sub pictureBox1_Paint(ByVal sender As Object, ByVal e As
System.Windows.Forms.PaintEventArgs)
' Create a local version of the graphics object for the PictureBox.
Dim g As Graphics = e.Graphics
' Draw a string on the PictureBox.
g.DrawString("This is a diagonal line drawn on the control", _
New Font("Arial", 10), Brushes.Red, New PointF(30.0F, 30.0F))
' Draw a line in the PictureBox.
g.DrawLine(System.Drawing.Pens.Red, pictureBox1.Left, _
pictureBox1.Top, pictureBox1.Right, pictureBox1.Bottom)
End Sub 'pictureBox1_Paint
but then if you already the GB image in some format (tif, bmp,) you may be
better off looking for some picture control to take care of that for you.
Hey, I am newbie to vb too. so I can help very much beyon what I can find by
goole or built help.
you may also want to look at the game snippets or starter kit/template. I
am sure there are plenty of examples for handling graphics
"G .Net" <no********@email.com> wrote in message
news:jZ******************************@pipex.net...
Hi Fred
Ah, looks like exactly what I need!!!
However, bit of newbie so need help in exactly what to do. Could I trouble
you to give the steps I need?
G
"Fred Hedges" <do******@spammuch.com> wrote in message
news:e4*******************@news.demon.co.uk... What you need to do is make a user control and then modify it's
transparent property on window construction. You then need to handle
"InvalidateEx" messages in order to force the parent to redraw your
background, rather than you. Funny you mention this because I had to do
this with a "working....." animation yesterday.
This sample is in C# but it's easy to convert. You won't be needing a
picture box. Just use DrawImage to render your GIF on the control
surface but overriding the paint event.
http://www.devnewsgroups.net/link.as...rol&lang=en%3E
"G .Net" <no********@email.com> wrote in message
news:Jf********************@pipex.net... Hi
I have a form on which I have a picture box. I have placed a GIF as the
image for this picture box. The GIF has a transparent background.
If I change the background color of the form, then the GIF appears on
the form correctly i.e. the background of the form shows through the
transparent part of the gif.
However, if I place a BackgroundImage on the form, the transparent part
of the form does not show the BackgroundImage of the form, rather is
shows the back color of the form. This obviously make the GIF not to be
"transparent".
Can anybody help?
Thanks
G