Página 1 de 1

error en fillrect

Publicado: Vie Mar 18, 2005 7:31 pm
por Francisco Sanchez
Algo estoy haciendo mal pero me da error :
oBrush := TBrush():Create( ,clNavy )
oCanvas:FillRect( { 150, 250, 300, 500 }, oBrush )
y me da error message not found:oBrush en el objecto canvas, que hago mal?
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL -

error en fillrect

Publicado: Vie Mar 18, 2005 7:46 pm
por Francisco Sanchez
la idea es hacer arriba en la pagina un recuadro que ocupe el ancho de la
pagina dejando los margenes correspondientes, pero que sea o gris clarito
con el borde negro o el recuadro con el borde negro y que sea transparente.
Me he fijado que si no le paso el objeto obrush me hace perfectamente el
recuadro, pero el borde del mismo es el mismo que el del fondo.
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL -

error en fillrect

Publicado: Vie Mar 18, 2005 8:13 pm
por jfgimenez
Paco,
> Algo estoy haciendo mal pero me da error :
>
> oBrush := TBrush():Create( ,clNavy )
>
> oCanvas:FillRect( { 150, 250, 300, 500 }, oBrush )
>
> y me da error message not found:oBrush en el objecto canvas, que hago mal?
oBrush lo tienes que guardar tú en una variable local o en algún otro sitio.
La clase TCanvas no tiene ninguna propiedad oBrush.
Por otro lado, lo que sí puedes hacer para no tener que crear un brush es
asignar la propiedad nClrPane del canvas:
oCanvas:nClrPane := clSilver
oCanvas:FillRect( { 150, 250, 300, 500 } )
--
Un saludo,
José F. Giménez

error en fillrect

Publicado: Vie Mar 18, 2005 8:20 pm
por jfgimenez
Paco,
> la idea es hacer arriba en la pagina un recuadro que ocupe el ancho de la
> pagina dejando los margenes correspondientes, pero que sea o gris clarito
> con el borde negro o el recuadro con el borde negro y que sea
> transparente.
>
> Me he fijado que si no le paso el objeto obrush me hace perfectamente el
> recuadro, pero el borde del mismo es el mismo que el del fondo.
FillRect() dibuja un rectángulo relleno, pero efectívamente no dibuja el
borde, sino sólo el relleno. Para pintar borde y relleno, tienes que usar
Rectangle():
oCanvas:nClrPane := clSilver
oCanvas:Rectangle( { 100, 100, 500, 500 } )
Y te pintará un rectángulo con el borde negro y fino, y relleno de gris.
Si quieres cambiar el color o el ancho del borde, tienes que crear un pen:
Local oPen := TPen():Create( PS_SOLID, 4, clRed )
oCanvas:oPen := oPen
oCanvas:nClrPane := clSilver
oCanvas:Rectangle( { 100, 100, 500, 500 } )
oPen:Destroy()
--
Un saludo,
José F. Giménez

error en fillrect

Publicado: Vie Mar 18, 2005 8:27 pm
por Francisco Sanchez
Rectangle() funciona pero no esta en la ayuda del canvas que me paso
ignacio, tenerlo en cuenta, no aparece en el indice.
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL -

error en fillrect

Publicado: Vie Mar 18, 2005 8:32 pm
por ignacio
Oido cocina :-)
No obstante si estaba en Canvas.txt
Un saludo,
"Francisco Sanchez" <francisco@softwaretotal.biz> escribió en el mensaje
news:423b2bb9$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Rectangle() funciona pero no esta en la ayuda del canvas que me paso
> ignacio, tenerlo en cuenta, no aparece en el indice.
>
> Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL -
>

error en fillrect

Publicado: Vie Mar 18, 2005 8:37 pm
por Francisco Sanchez
ok ahi no me fije ves, voy a verlo ahora mismo a lo mejor veo mas cosas.
Atentamente : Francisco Sanchez GERENTE GRUPO ST - Software TOTAL -