redondas

15/07/2004 - 15:00 por Xavier Valdés | Informe spam
Hola a todos,

Hay alguna manera de dibujar pincturebox redondas? O labels redondas?
Veo que el control shape ya no está...
Gracias,
Xavi

Preguntas similare

Leer las respuestas

#1 Xavier Valdés
15/07/2004 - 15:45 | Informe spam
Necesito hacer como una especie de botón (al estilo PLAY del windows media
player)
Grcias, Lázaro
"Lázaro" escribió en el mensaje
news:%23$
Sólo quieres pintar algo redondo, o necesitas que sea un control para que
luego el usuario interactúe ?

Salu2

"Xavier Valdés" wrote in message
news:
> Hola a todos,
>
> Hay alguna manera de dibujar pincturebox redondas? O labels redondas?
> Veo que el control shape ya no está...
> Gracias,
> Xavi
>
>


Respuesta Responder a este mensaje
#2 e-lores
15/07/2004 - 16:29 | Informe spam
Aqui tienes un buen artículo

http://www.microsoft.com/spanish/ms...art158.asp

saludos
Ernesto Lores.

"Xavier Valdés" escribió en el mensaje
news:
Necesito hacer como una especie de botón (al estilo PLAY del windows media
player)
Grcias, Lázaro
"Lázaro" escribió en el mensaje
news:%23$
> Sólo quieres pintar algo redondo, o necesitas que sea un control para


que
> luego el usuario interactúe ?
>
> Salu2
>
> "Xavier Valdés" wrote in message
> news:
> > Hola a todos,
> >
> > Hay alguna manera de dibujar pincturebox redondas? O labels redondas?
> > Veo que el control shape ya no está...
> > Gracias,
> > Xavi
> >
> >
>
>


Respuesta Responder a este mensaje
#3 Lázaro
16/07/2004 - 01:37 | Informe spam
Te he construido un pequeño ejemplo, ojo las posibilidades son muchas y cada
control funciona un poco a su manera

Esta sería la clase del botón

Imports System.Drawing

Public Class MiBoton
Inherits System.Windows.Forms.Button

Protected _Pulsado As Boolean = False

Public Sub New()

MyBase.New()

'// Estilos del control
SetStyle(ControlStyles.Opaque, False)
SetStyle(ControlStyles.ResizeRedraw, True)

Me.Cursor = Cursors.Hand
End Sub
Protected Overrides Sub OnPaint(ByVal pevent As
System.Windows.Forms.PaintEventArgs)

Dim redBrush As SolidBrush = New SolidBrush(Color.Red)
Dim fn As Font = New Font("Verdana", 14, GraphicsUnit.Pixel)

pevent.Graphics.DrawEllipse(New Pen(Color.Red, 3), New Rectangle(0,
0, Me.Width - 2, Me.Height - 2))
If Not _Pulsado Then
pevent.Graphics.DrawString(Me.Text, fn, redBrush, 15, 38)
Else
pevent.Graphics.DrawString(Me.Text, fn, redBrush, 16, 39)
End If

End Sub

Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
MyBase.OnResize(e)
End Sub

Protected Overrides Sub OnMouseDown(ByVal mevent As
System.Windows.Forms.MouseEventArgs)
MyBase.OnMouseDown(mevent)
_Pulsado = True
Invalidate()
End Sub

Protected Overrides Sub OnMouseUp(ByVal mevent As
System.Windows.Forms.MouseEventArgs)
MyBase.OnMouseUp(mevent)
_Pulsado = False
Invalidate()
End Sub
End Class

Y esto un ejemplo para crearlo, o podrías añadirlo al toolbox...

Private Sub Form1_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles MyBase.Load

Dim but As New MiBoton

but.Text = "Click Me"
but.Height = 100
but.Width = 100

AddHandler but.Click, AddressOf ClickMe
Me.Controls.Add(but)

End Sub

Private Sub ClickMe(ByVal sender As Object, ByVal e As System.EventArgs)
MessageBox.Show("Hola")
End Sub

Ciao

"Xavier Valdés" wrote in message
news:
Necesito hacer como una especie de botón (al estilo PLAY del windows media
player)
Grcias, Lázaro
"Lázaro" escribió en el mensaje
news:%23$
> Sólo quieres pintar algo redondo, o necesitas que sea un control para


que
> luego el usuario interactúe ?
>
> Salu2
>
> "Xavier Valdés" wrote in message
> news:
> > Hola a todos,
> >
> > Hay alguna manera de dibujar pincturebox redondas? O labels redondas?
> > Veo que el control shape ya no está...
> > Gracias,
> > Xavi
> >
> >
>
>


Respuesta Responder a este mensaje
#4 Xavier Valdés
16/07/2004 - 12:48 | Informe spam
Muchas gracias a ambos!

"Lázaro" escribió en el mensaje
news:%
Te he construido un pequeño ejemplo, ojo las posibilidades son muchas y


cada
control funciona un poco a su manera

Esta sería la clase del botón

Imports System.Drawing

Public Class MiBoton
Inherits System.Windows.Forms.Button

Protected _Pulsado As Boolean = False

Public Sub New()

MyBase.New()

'// Estilos del control
SetStyle(ControlStyles.Opaque, False)
SetStyle(ControlStyles.ResizeRedraw, True)

Me.Cursor = Cursors.Hand
End Sub
Protected Overrides Sub OnPaint(ByVal pevent As
System.Windows.Forms.PaintEventArgs)

Dim redBrush As SolidBrush = New SolidBrush(Color.Red)
Dim fn As Font = New Font("Verdana", 14, GraphicsUnit.Pixel)

pevent.Graphics.DrawEllipse(New Pen(Color.Red, 3), New


Rectangle(0,
0, Me.Width - 2, Me.Height - 2))
If Not _Pulsado Then
pevent.Graphics.DrawString(Me.Text, fn, redBrush, 15, 38)
Else
pevent.Graphics.DrawString(Me.Text, fn, redBrush, 16, 39)
End If

End Sub

Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
MyBase.OnResize(e)
End Sub

Protected Overrides Sub OnMouseDown(ByVal mevent As
System.Windows.Forms.MouseEventArgs)
MyBase.OnMouseDown(mevent)
_Pulsado = True
Invalidate()
End Sub

Protected Overrides Sub OnMouseUp(ByVal mevent As
System.Windows.Forms.MouseEventArgs)
MyBase.OnMouseUp(mevent)
_Pulsado = False
Invalidate()
End Sub
End Class

Y esto un ejemplo para crearlo, o podrías añadirlo al toolbox...

Private Sub Form1_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles MyBase.Load

Dim but As New MiBoton

but.Text = "Click Me"
but.Height = 100
but.Width = 100

AddHandler but.Click, AddressOf ClickMe
Me.Controls.Add(but)

End Sub

Private Sub ClickMe(ByVal sender As Object, ByVal e As


System.EventArgs)
MessageBox.Show("Hola")
End Sub

Ciao

"Xavier Valdés" wrote in message
news:
> Necesito hacer como una especie de botón (al estilo PLAY del windows


media
> player)
> Grcias, Lázaro
> "Lázaro" escribió en el mensaje
> news:%23$
> > Sólo quieres pintar algo redondo, o necesitas que sea un control para
que
> > luego el usuario interactúe ?
> >
> > Salu2
> >
> > "Xavier Valdés" wrote in message
> > news:
> > > Hola a todos,
> > >
> > > Hay alguna manera de dibujar pincturebox redondas? O labels


redondas?
> > > Veo que el control shape ya no está...
> > > Gracias,
> > > Xavi
> > >
> > >
> >
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida