Visual Basic - Como escribir en un PictureBox

Life is soft - evento anual de software empresarial
   
Vista:

Como escribir en un PictureBox

Publicado por Jose jimenez (9 intervenciones) el 20/08/2008 22:10:42
Me podrian explicar como escribir sobre el picture box.

Puse esto:

me.picture1.print "Hola Mundo"

Pero no muestra nada. Espero sus respuestas.

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Y el centrado?

Publicado por Jose jimenez (9 intervenciones) el 20/08/2008 23:17:10
Disculpen, si era la forma correcta sino que tenia otra porcion de codigo que me bloqueaba esto, en fin.

Solucionado.

Ahora tengo otra duda, como poder centrar el texto mostrado en el pictureBox, y sabran como asignar el tamaño adecuado de fuente al redimencionar el pictureBox.

Espero me ayuden con estas 2 cositas, yo ando buscando pero no encuentro.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Y el centrado?

Publicado por Diego (211 intervenciones) el 21/08/2008 02:58:47
mensaje = "Hola Mundo"
Me.Picture1.CurrentX = Picture1.Width / 2 - Len(mensaje) / 2
Me.Picture1.Print mensaje

¿Cual es para ti el tamaño adecuado de font?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Y el centrado?

Publicado por Jose jimenez (9 intervenciones) el 21/08/2008 16:52:45
Muchas Gracias!!!

Ya mira, el pictureBox lo acoplare al formulario de modo que lo ocupe todo, entonces al redimencionar el formulario quisiera que la fuente del picture igual.

En otras palabras si maximizo, el texto del pictureBox se adecue al tamaño.

Creo que es con el FontSize, pero como asignarle el tamaño adecuado?

Muchas gracias, ojala me puedas ayudar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NO NO NO!

Publicado por Chicho (80 intervenciones) el 21/08/2008 21:18:24
Mira, me parece que te informaron mal.
vamos por partes.
Para que el texto salga en el pictureBox tenes que establecer la propiedad Autoredraw a True
para pintar un texto tenes que usar el metodo Print es decir

call Picture1.Print ("Texto")
o
picture1.print "Texto"

para centrar el texto tenes que usar CurrentX y CurrentY, pero para eso tenes que saber cuanto mide el texto de ancho y de alto, a vos te dijeron que uses Len, esa funcion devuelve el tamaño del texto en byte y el ancho y el alto no se miden en bytes se mide en por ejemplo: twips, pixel, pulgadas, centrimetro, etc (el tipo de media es determinado por la Propiedad ScaleMode del PictureBox que estas usando)

Entonces:

para saber el ancho del texto usas Picture1.TextWidth y Picture1.TextHeight (El ancho y el alto es determinado por el tamoño y tipo de fuente del control)
por otro lado es importante borrar todo lo impreso en el picturebox antes de volver a pintar, para eso usas Picture1.Cls

Para centrar entonces usas:

------------------------------------------
Dim Texto as string
Texto="Hola como andas?"

Picture1.cls
Picture1.CurrentX = Picture1.ScaleWidth / 2 - Picture1.TextWidth (Texto) / 2
Picture1.CurrentY= Picture1.ScaleHeight / 2 - Picture1.TextHeight (Texto) / 2

Picture1.Print Texto
-----------------------

Un buen lugar para ubicar este codigo es en el evento Rezise del Formulario o del PictureBox

buenos eso es todo

saludos chicho
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

MUCHISIMAS GRACIAS.

Publicado por Jose jimenez (9 intervenciones) el 21/08/2008 21:34:29
Si, con el codigo de DIEGO no quedaba del todo centrado, y claro debia ser con el alto y ancho del texto.

Bueno, muchas gracias CHICHO por brindarme tu ayuda me sirvio de mucho.

Ya lo probe y funciona genial, gracias que en este mundo hay personas como tu que ayudan y explican. Es la primera ves que uso el control picture a profundidad y soy programador viejo.

Muchisimas Gracias chicho.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MUCHISIMAS GRACIAS.

Publicado por Diego (211 intervenciones) el 22/08/2008 02:12:58
El codigo de Chicho es el correcto. Yo puse el scalemode a character, lo probé y me quedo centrado, pero al redimensionar me di cuenta que no quedaba bien pero ya habia pulsado 'enviar datos'

Por cierto JOSE, respecto a tu segundo problema, si no lo has conseguido solucionar, prueba el mismo codigo en el evento resizer del formulario tal que asi.

Texto = "Hola como andas?"
Picture1.Cls
Picture1.Width = Me.ScaleWidth
Picture1.Height = Me.ScaleHeight
Picture1.FontSize = Me.ScaleWidth / 4
Picture1.CurrentX = Picture1.ScaleWidth / 2 - Picture1.TextWidth(Texto) / 2
Picture1.CurrentY = Picture1.ScaleHeight / 2 - Picture1.TextHeight(Texto) / 2
Picture1.Print Texto

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MUCHISIMAS GRACIAS.

Publicado por Diego (211 intervenciones) el 22/08/2008 02:27:15
scalemode tanto del picturebox como del formulario = character
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MUCHISIMAS GRACIAS.

Publicado por Jose jimenez (9 intervenciones) el 22/08/2008 17:00:47
Gracias diego, tu solucion es valida en cuanto a la fuente. Aunque no esta a la dimension del control pero bueno es un AVANCE.

Gracias por brindarme tu ayuda, tanto tu como el otro forista me ayudaron enormemente, espero si tengo mas dudas me puedan ayudar.

Muchas Gracias pos vuestra colaboracion.

" Todos somos ignorantes, pero no ignoramos las mismas cosas " .
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como escribir en un PictureBox

Publicado por Manuel (1 intervención) el 12/12/2009 19:15:01
Requieres de:
picture1.autodrawing = true

antes de empezar a utilizar el picturebox
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como escribir en un PictureBox

Publicado por Felipe (2 intervenciones) el 27/11/2010 00:10:29
Primero debes escribir Picture1.AutoRedraw = True
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como escribir en un PictureBox

Publicado por Felipe (2 intervenciones) el 27/11/2010 00:11:09
Primero debes escribir Picture1.AutoRedraw = True
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar