Hola,
En un control TPanel, intento con un TCanvas pintar un rectángulo, el
problema es que no se repinta.
El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta algo, pero
lo borra. Es muy rápido.
¿Como puedo pintar encima y que se repinte cada vez que minimice y maximice
por ejemplo?
Un Saludo,
Joaquín
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Problema con repintado
Problema con repintado
Joaquin,
Utiliza un TBevel, compruebo que el TPanel no recibe los eventos OnPaint y
OnPainted. Lo miraremos.
Un saludo,
"Joaquín Martínez" <jmartial@interbook.net> escribió en el mensaje
news:452da534$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> En un control TPanel, intento con un TCanvas pintar un rectángulo, el
> problema es que no se repinta.
>
> El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta algo,
> pero lo borra. Es muy rápido.
>
> ¿Como puedo pintar encima y que se repinte cada vez que minimice y
> maximice por ejemplo?
>
>
> Un Saludo,
> Joaquín
>
Utiliza un TBevel, compruebo que el TPanel no recibe los eventos OnPaint y
OnPainted. Lo miraremos.
Un saludo,
"Joaquín Martínez" <jmartial@interbook.net> escribió en el mensaje
news:452da534$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Hola,
>
> En un control TPanel, intento con un TCanvas pintar un rectángulo, el
> problema es que no se repinta.
>
> El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta algo,
> pero lo borra. Es muy rápido.
>
> ¿Como puedo pintar encima y que se repinte cada vez que minimice y
> maximice por ejemplo?
>
>
> Un Saludo,
> Joaquín
>
Problema con repintado
Ignacio,
Probé un TPanel, luego un TBevel y luego un Tlabel.
Ninguno repinta, puede que el problema esté en toda la jerarquía de clases,
sino, alguno funcionaría.
Gracias,
Joaquín
"Ignacio Ortiz de Zúñiga" <_support_@xailer.com> escribió en el mensaje
news:[email=452e11ad@news.xailer.com...]452e11ad@news.xailer.com...[/email]
> Joaquin,
>
> Utiliza un TBevel, compruebo que el TPanel no recibe los eventos OnPaint y
> OnPainted. Lo miraremos.
>
> Un saludo,
>
> "Joaquín Martínez" <jmartial@interbook.net> escribió en el mensaje
> news:452da534$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Hola,
>>
>> En un control TPanel, intento con un TCanvas pintar un rectángulo, el
>> problema es que no se repinta.
>>
>> El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta algo,
>> pero lo borra. Es muy rápido.
>>
>> ¿Como puedo pintar encima y que se repinte cada vez que minimice y
>> maximice por ejemplo?
>>
>>
>> Un Saludo,
>> Joaquín
>>
>
>
Probé un TPanel, luego un TBevel y luego un Tlabel.
Ninguno repinta, puede que el problema esté en toda la jerarquía de clases,
sino, alguno funcionaría.
Gracias,
Joaquín
"Ignacio Ortiz de Zúñiga" <_support_@xailer.com> escribió en el mensaje
news:[email=452e11ad@news.xailer.com...]452e11ad@news.xailer.com...[/email]
> Joaquin,
>
> Utiliza un TBevel, compruebo que el TPanel no recibe los eventos OnPaint y
> OnPainted. Lo miraremos.
>
> Un saludo,
>
> "Joaquín Martínez" <jmartial@interbook.net> escribió en el mensaje
> news:452da534$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>> Hola,
>>
>> En un control TPanel, intento con un TCanvas pintar un rectángulo, el
>> problema es que no se repinta.
>>
>> El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta algo,
>> pero lo borra. Es muy rápido.
>>
>> ¿Como puedo pintar encima y que se repinte cada vez que minimice y
>> maximice por ejemplo?
>>
>>
>> Un Saludo,
>> Joaquín
>>
>
>
Problema con repintado
This is a multi-part message in MIME format.
------=_NextPart_000_004C_01C6EF76.ECD2B890
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_004D_01C6EF76.ECD2B890"
------=_NextPart_001_004D_01C6EF76.ECD2B890
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Joaquin,=20
Con TBevel funciona:
METHOD Panel1Painted( oSender, hDC, cPaintStruct ) CLASS TForm1
WITH OBJECT TCanvas():New( SCREEN )
:hDC :=3D hDC
:Rectangle( {0,0,10,10} )
:Destroy()
END WITH
RETURN Nil
Ese cuadradito es lo que yo pinto.=20
Un saludo
"Joaqu=EDn Mart=EDnez" <jmartial@interbook.net> escribi=F3 en el mensaje =
news:452e1ec0$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Ignacio,
>=20
> Prob=E9 un TPanel, luego un TBevel y luego un Tlabel.
>=20
> Ninguno repinta, puede que el problema est=E9 en toda la jerarqu=EDa =
de clases,=20
> sino, alguno funcionar=EDa.
>=20
>=20
> Gracias,
> Joaqu=EDn
>=20
> "Ignacio Ortiz de Z=FA=F1iga" <_support_@xailer.com> escribi=F3 en el =
mensaje=20
> news:[email=452e11ad@news.xailer.com...]452e11ad@news.xailer.com...[/email]
>> Joaquin,
>>
>> Utiliza un TBevel, compruebo que el TPanel no recibe los eventos =
OnPaint y=20
>> OnPainted. Lo miraremos.
>>
>> Un saludo,
>>
>> "Joaqu=EDn Mart=EDnez" <jmartial@interbook.net> escribi=F3 en el =
mensaje=20
>> news:452da534$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> Hola,
>>>
>>> En un control TPanel, intento con un TCanvas pintar un rect=E1ngulo, =
el=20
>>> problema es que no se repinta.
>>>
>>> El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta =
algo,=20
>>> pero lo borra. Es muy r=E1pido.
>>>
>>> =BFComo puedo pintar encima y que se repinte cada vez que minimice y =
>>> maximice por ejemplo?
>>>
>>>
>>> Un Saludo,
>>> Joaqu=EDn
>>>
>>
>>=20
>=20
>
------=_NextPart_001_004D_01C6EF76.ECD2B890
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.2900.2912" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2>Joaquin, </FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Con TBevel funciona:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>METHOD Panel1Painted( oSender, hDC, =
cPaintStruct )=20
CLASS TForm1</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂWITH OBJECT =
TCanvas():New( SCREEN=20
)<BR>ÂÂÂÂÂ :hDC :=3D=20
hDC<BR>ÂÂÂÂÂ :Rectangle( {0,0,10,10}=20
)<BR>ÂÂÂÂÂ :Destroy()<BR>ÂÂ END=20
WITH</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>RETURN Nil<BR></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><IMG alt=3D"" hspace=3D0=20
src=3D"cid:004701c6ef66$29477790$[email=6266573e@IGNACIOLT]6266573e@IGNACIOLT[/email]" align=3Dbaseline=20
border=3D0></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Ese cuadradito es lo que yo pinto. =
</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Un saludo</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>"Joaqu=EDn Mart=EDnez" <</FONT><A=20
href=3D"mailto:jmartial@interbook.net"><FONT face=3DArial=20
size=3D2>jmartial@interbook.net</FONT></A><FONT face=3DArial =
size=3D2>> escribi=F3 en=20
el mensaje </FONT><A href=3D"news:452e1ec0$1@news.xailer.com"><FONT =
face=3DArial=20
size=3D2>news:452e1ec0$1@news.xailer.com</FONT></A><FONT face=3DArial=20
size=3D2>...</FONT></DIV><FONT face=3DArial size=3D2>> =
Ignacio,<BR>> <BR>>=20
Prob=E9 un TPanel, luego un TBevel y luego un Tlabel.<BR>> <BR>> =
Ninguno=20
repinta, puede que el problema est=E9 en toda la jerarqu=EDa de clases, =
<BR>>=20
sino, alguno funcionar=EDa.<BR>> <BR>> <BR>> Gracias,<BR>>=20
Joaqu=EDn<BR>> <BR>> "Ignacio Ortiz de Z=FA=F1iga" <</FONT><A=20
href=3D"mailto:_support_@xailer.com"><FONT face=3DArial=20
size=3D2>_support_@xailer.com</FONT></A><FONT face=3DArial size=3D2>> =
escribi=F3 en=20
el mensaje <BR>> </FONT><A =
href=3D"news:452e11ad@news.xailer.com"><FONT=20
face=3DArial size=3D2>news:452e11ad@news.xailer.com</FONT></A><FONT =
face=3DArial=20
size=3D2>...<BR>>> Joaquin,<BR>>><BR>>> Utiliza un =
TBevel,=20
compruebo que el TPanel no recibe los eventos OnPaint y <BR>>> =
OnPainted.=20
Lo miraremos.<BR>>><BR>>> Un saludo,<BR>>><BR>>> =
"Joaqu=EDn Mart=EDnez" <</FONT><A =
href=3D"mailto:jmartial@interbook.net"><FONT=20
face=3DArial size=3D2>jmartial@interbook.net</FONT></A><FONT =
face=3DArial size=3D2>>=20
escribi=F3 en el mensaje <BR>>> </FONT><A=20
href=3D"news:452da534$1@news.xailer.com"><FONT face=3DArial=20
size=3D2>news:452da534$1@news.xailer.com</FONT></A><FONT face=3DArial=20
size=3D2>...<BR>>>> Hola,<BR>>>><BR>>>> En un =
control=20
TPanel, intento con un TCanvas pintar un rect=E1ngulo, el =
<BR>>>>=20
problema es que no se repinta.<BR>>>><BR>>>> El =
pintado lo=20
llamo en OnPainted o en OnPaint, y parece que pinta algo, =
<BR>>>> pero=20
lo borra. Es muy r=E1pido.<BR>>>><BR>>>> =BFComo puedo =
pintar=20
encima y que se repinte cada vez que minimice y <BR>>>> =
maximice por=20
ejemplo?<BR>>>><BR>>>> <BR>>>> Un=20
Saludo,<BR>>>> =
Joaqu=EDn<BR>>>><BR>>> <BR>>> <BR>>=20
<BR>></FONT></BODY></HTML>
------=_NextPart_001_004D_01C6EF76.ECD2B890--
------=_NextPart_000_004C_01C6EF76.ECD2B890
Content-Type: image/png;
name="2006-10-14_095340.png"
Content-Transfer-Encoding: base64
Content-ID: <004701c6ef66$29477790$[email=6266573e@IGNACIOLT]6266573e@IGNACIOLT[/email]>
iVBORw0KGgoAAAANSUhEUgAAAHsAAAB0CAIAAAAq89r9AAAABmJLR0QAAAAA AAD5Q7t/AAAACXBI
WXMAAA7EAAAOxAGVKw4bAAABRklEQVR4nO3RsQ0CMRQFweu/AzogoCBaQLoe TAWcD2E2gHma0PrB
etsfd0rb9AVrKV5TvKZ4TfHa28Vv1wtnjDGWFR822/ri2+GmR37eV4q/+l7F d8V7itcUryleU7ym
eE3x2leKH2x65OetLz599ucUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa 4jXFa4rXFK8pXlO8
pnhN8ZriNcVritcUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa4jXFa4rX FK8pXlO8pnhN8Zri
NcVritcUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa4jXFa4rXFK8pXlO8 pnhN8ZriNcVritcU
ryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfHa4uKcsaz4sNNbU5wPKV5TvKZ4 TfGa4jXFa4rXFK8p
XnsCswEy5UNQHhYAAAAASUVORK5CYII=
------=_NextPart_000_004C_01C6EF76.ECD2B890--
Attached files
------=_NextPart_000_004C_01C6EF76.ECD2B890
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_004D_01C6EF76.ECD2B890"
------=_NextPart_001_004D_01C6EF76.ECD2B890
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Joaquin,=20
Con TBevel funciona:
METHOD Panel1Painted( oSender, hDC, cPaintStruct ) CLASS TForm1
WITH OBJECT TCanvas():New( SCREEN )
:hDC :=3D hDC
:Rectangle( {0,0,10,10} )
:Destroy()
END WITH
RETURN Nil
Ese cuadradito es lo que yo pinto.=20
Un saludo
"Joaqu=EDn Mart=EDnez" <jmartial@interbook.net> escribi=F3 en el mensaje =
news:452e1ec0$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Ignacio,
>=20
> Prob=E9 un TPanel, luego un TBevel y luego un Tlabel.
>=20
> Ninguno repinta, puede que el problema est=E9 en toda la jerarqu=EDa =
de clases,=20
> sino, alguno funcionar=EDa.
>=20
>=20
> Gracias,
> Joaqu=EDn
>=20
> "Ignacio Ortiz de Z=FA=F1iga" <_support_@xailer.com> escribi=F3 en el =
mensaje=20
> news:[email=452e11ad@news.xailer.com...]452e11ad@news.xailer.com...[/email]
>> Joaquin,
>>
>> Utiliza un TBevel, compruebo que el TPanel no recibe los eventos =
OnPaint y=20
>> OnPainted. Lo miraremos.
>>
>> Un saludo,
>>
>> "Joaqu=EDn Mart=EDnez" <jmartial@interbook.net> escribi=F3 en el =
mensaje=20
>> news:452da534$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> Hola,
>>>
>>> En un control TPanel, intento con un TCanvas pintar un rect=E1ngulo, =
el=20
>>> problema es que no se repinta.
>>>
>>> El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta =
algo,=20
>>> pero lo borra. Es muy r=E1pido.
>>>
>>> =BFComo puedo pintar encima y que se repinte cada vez que minimice y =
>>> maximice por ejemplo?
>>>
>>>
>>> Un Saludo,
>>> Joaqu=EDn
>>>
>>
>>=20
>=20
>
------=_NextPart_001_004D_01C6EF76.ECD2B890
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.2900.2912" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY>
<DIV><FONT face=3DArial size=3D2>Joaquin, </FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Con TBevel funciona:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>METHOD Panel1Painted( oSender, hDC, =
cPaintStruct )=20
CLASS TForm1</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂWITH OBJECT =
TCanvas():New( SCREEN=20
)<BR>ÂÂÂÂÂ :hDC :=3D=20
hDC<BR>ÂÂÂÂÂ :Rectangle( {0,0,10,10}=20
)<BR>ÂÂÂÂÂ :Destroy()<BR>ÂÂ END=20
WITH</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>RETURN Nil<BR></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><IMG alt=3D"" hspace=3D0=20
src=3D"cid:004701c6ef66$29477790$[email=6266573e@IGNACIOLT]6266573e@IGNACIOLT[/email]" align=3Dbaseline=20
border=3D0></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Ese cuadradito es lo que yo pinto. =
</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Un saludo</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>"Joaqu=EDn Mart=EDnez" <</FONT><A=20
href=3D"mailto:jmartial@interbook.net"><FONT face=3DArial=20
size=3D2>jmartial@interbook.net</FONT></A><FONT face=3DArial =
size=3D2>> escribi=F3 en=20
el mensaje </FONT><A href=3D"news:452e1ec0$1@news.xailer.com"><FONT =
face=3DArial=20
size=3D2>news:452e1ec0$1@news.xailer.com</FONT></A><FONT face=3DArial=20
size=3D2>...</FONT></DIV><FONT face=3DArial size=3D2>> =
Ignacio,<BR>> <BR>>=20
Prob=E9 un TPanel, luego un TBevel y luego un Tlabel.<BR>> <BR>> =
Ninguno=20
repinta, puede que el problema est=E9 en toda la jerarqu=EDa de clases, =
<BR>>=20
sino, alguno funcionar=EDa.<BR>> <BR>> <BR>> Gracias,<BR>>=20
Joaqu=EDn<BR>> <BR>> "Ignacio Ortiz de Z=FA=F1iga" <</FONT><A=20
href=3D"mailto:_support_@xailer.com"><FONT face=3DArial=20
size=3D2>_support_@xailer.com</FONT></A><FONT face=3DArial size=3D2>> =
escribi=F3 en=20
el mensaje <BR>> </FONT><A =
href=3D"news:452e11ad@news.xailer.com"><FONT=20
face=3DArial size=3D2>news:452e11ad@news.xailer.com</FONT></A><FONT =
face=3DArial=20
size=3D2>...<BR>>> Joaquin,<BR>>><BR>>> Utiliza un =
TBevel,=20
compruebo que el TPanel no recibe los eventos OnPaint y <BR>>> =
OnPainted.=20
Lo miraremos.<BR>>><BR>>> Un saludo,<BR>>><BR>>> =
"Joaqu=EDn Mart=EDnez" <</FONT><A =
href=3D"mailto:jmartial@interbook.net"><FONT=20
face=3DArial size=3D2>jmartial@interbook.net</FONT></A><FONT =
face=3DArial size=3D2>>=20
escribi=F3 en el mensaje <BR>>> </FONT><A=20
href=3D"news:452da534$1@news.xailer.com"><FONT face=3DArial=20
size=3D2>news:452da534$1@news.xailer.com</FONT></A><FONT face=3DArial=20
size=3D2>...<BR>>>> Hola,<BR>>>><BR>>>> En un =
control=20
TPanel, intento con un TCanvas pintar un rect=E1ngulo, el =
<BR>>>>=20
problema es que no se repinta.<BR>>>><BR>>>> El =
pintado lo=20
llamo en OnPainted o en OnPaint, y parece que pinta algo, =
<BR>>>> pero=20
lo borra. Es muy r=E1pido.<BR>>>><BR>>>> =BFComo puedo =
pintar=20
encima y que se repinte cada vez que minimice y <BR>>>> =
maximice por=20
ejemplo?<BR>>>><BR>>>> <BR>>>> Un=20
Saludo,<BR>>>> =
Joaqu=EDn<BR>>>><BR>>> <BR>>> <BR>>=20
<BR>></FONT></BODY></HTML>
------=_NextPart_001_004D_01C6EF76.ECD2B890--
------=_NextPart_000_004C_01C6EF76.ECD2B890
Content-Type: image/png;
name="2006-10-14_095340.png"
Content-Transfer-Encoding: base64
Content-ID: <004701c6ef66$29477790$[email=6266573e@IGNACIOLT]6266573e@IGNACIOLT[/email]>
iVBORw0KGgoAAAANSUhEUgAAAHsAAAB0CAIAAAAq89r9AAAABmJLR0QAAAAA AAD5Q7t/AAAACXBI
WXMAAA7EAAAOxAGVKw4bAAABRklEQVR4nO3RsQ0CMRQFweu/AzogoCBaQLoe TAWcD2E2gHma0PrB
etsfd0rb9AVrKV5TvKZ4TfHa28Vv1wtnjDGWFR822/ri2+GmR37eV4q/+l7F d8V7itcUryleU7ym
eE3x2leKH2x65OetLz599ucUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa 4jXFa4rXFK8pXlO8
pnhN8ZriNcVritcUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa4jXFa4rX FK8pXlO8pnhN8Zri
NcVritcUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa4jXFa4rXFK8pXlO8 pnhN8ZriNcVritcU
ryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfHa4uKcsaz4sNNbU5wPKV5TvKZ4 TfGa4jXFa4rXFK8p
XnsCswEy5UNQHhYAAAAASUVORK5CYII=
------=_NextPart_000_004C_01C6EF76.ECD2B890--
Attached files
Problema con repintado
This is a multi-part message in MIME format.
------=_NextPart_000_000A_01C6EFA3.077C4450
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_000B_01C6EFA3.077C4450"
------=_NextPart_001_000B_01C6EFA3.077C4450
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Ignacio,
es cierto, pero usando el hDC no haciendo GetDC(), ese era el problema =
de que no saliera nada.
Pero a=FAn as=ED tengo un problema en el pintado, que de ah=ED las =
pruebas sobre los eventos de pintado y es el siguiente:
Lo que quiero hacer al pintar es un PlayMetafile() que es donde tengo =
pintado el cuadradito como el de tu ejemplo, lo que pasa es que no cabe =
en el bevel, entonces como no he visto la forma de que lo ajuste por =
alg=FAn m=E9todo que desconozco, he usado las siguientes funciones:
SetViewOrg() // Desplaza en Px
SetMapMode( hDC , MM_ISOTROPIC )
SetWindowExt( ... ) =20
SetViewportExt( .... )
PlayMeta(....)
Si estas instrucciones las pongo en un bot=F3n, me lo pinta =
perfectamente ajustado dentro del Bevel, pero si eso mismo lo pongo en =
el
OnPainted , me lo pinta grand=EDiiisimo.
=BFExiste alguna f=F3rmula de que funcione correctamente en el OnPainted =
o existe alg=FAn m=E9todo que me autoajuste el metafile en el bevel?
Ese es mi problema y es que no le encuentro la soluci=F3n.
Un Saludo y gracias,
Joaqu=EDn
"Ignacio Ortiz de Z=FA=F1iga" <_support_@xailer.com> escribi=F3 en el =
mensaje news:[email=4530980a@news.xailer.com...]4530980a@news.xailer.com...[/email]
Joaquin,=20
Con TBevel funciona:
METHOD Panel1Painted( oSender, hDC, cPaintStruct ) CLASS TForm1
WITH OBJECT TCanvas():New( SCREEN )
:hDC :=3D hDC
:Rectangle( {0,0,10,10} )
:Destroy()
END WITH
RETURN Nil
Ese cuadradito es lo que yo pinto.=20
Un saludo
"Joaqu=EDn Mart=EDnez" <jmartial@interbook.net> escribi=F3 en el =
mensaje news:452e1ec0$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Ignacio,
>=20
> Prob=E9 un TPanel, luego un TBevel y luego un Tlabel.
>=20
> Ninguno repinta, puede que el problema est=E9 en toda la jerarqu=EDa =
de clases,=20
> sino, alguno funcionar=EDa.
>=20
>=20
> Gracias,
> Joaqu=EDn
>=20
> "Ignacio Ortiz de Z=FA=F1iga" <_support_@xailer.com> escribi=F3 en =
el mensaje=20
> news:[email=452e11ad@news.xailer.com...]452e11ad@news.xailer.com...[/email]
>> Joaquin,
>>
>> Utiliza un TBevel, compruebo que el TPanel no recibe los eventos =
OnPaint y=20
>> OnPainted. Lo miraremos.
>>
>> Un saludo,
>>
>> "Joaqu=EDn Mart=EDnez" <jmartial@interbook.net> escribi=F3 en el =
mensaje=20
>> news:452da534$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> Hola,
>>>
>>> En un control TPanel, intento con un TCanvas pintar un =
rect=E1ngulo, el=20
>>> problema es que no se repinta.
>>>
>>> El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta =
algo,=20
>>> pero lo borra. Es muy r=E1pido.
>>>
>>> =BFComo puedo pintar encima y que se repinte cada vez que minimice =
y=20
>>> maximice por ejemplo?
>>>
>>>
>>> Un Saludo,
>>> Joaqu=EDn
>>>
>>
>>=20
>=20
>
------=_NextPart_001_000B_01C6EFA3.077C4450
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.2900.2963" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Ignacio,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>es cierto, pero usando el hDC no =
haciendo GetDC(),=20
ese era el problema de que no saliera nada.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Pero a=FAn as=ED tengo un problema en =
el pintado, que=20
de ah=ED las pruebas sobre los eventos de pintado y es el =
siguiente:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Lo que quiero hacer al pintar es un =
PlayMetafile()=20
que es donde tengo pintado el cuadradito como el de tu ejemplo, lo que =
pasa es=20
que no cabe en el bevel, entonces como no he visto la forma de que lo =
ajuste por=20
alg=FAn m=E9todo que desconozco, he usado las siguientes =
funciones:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2> ÂÂÂÂÂÂ =20
SetViewOrg()ÂÂ // Desplaza en=20
Px<BR> ÂÂÂÂÂÂ SetMapMode( hDC , =
MM_ISOTROPIC=20
)<BR> ÂÂÂÂÂÂ SetWindowExt( ...=20
)ÂÂ<BR> ÂÂÂÂÂÂ SetViewportExt( =
.....=20
)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2> ÂÂÂÂÂÂ =20
PlayMeta(....)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Si estas instrucciones las pongo en un =
bot=F3n, me lo=20
pinta perfectamente ajustado dentro del Bevel, pero si eso mismo lo =
pongo en=20
el</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>OnPainted , me lo pinta =
grand=EDiiisimo.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>=BFExiste alguna f=F3rmula de que =
funcione=20
correctamente en el OnPainted o existe alg=FAn m=E9todo que me =
autoajuste el=20
metafile en el bevel?</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Ese es mi problema y es que no le =
encuentro la=20
soluci=F3n.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Un Saludo y gracias,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Joaqu=EDn</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<BLOCKQUOTE=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"Ignacio Ortiz de Z=FA=F1iga" <<A=20
href=3D"mailto:_support_@xailer.com">_support_@xailer.com</A>> =
escribi=F3 en el=20
mensaje <A=20
=
href=3D"news:4530980a@news.xailer.com">news:4530980a@news.xailer.com</A>.=
...</DIV>
<DIV><FONT face=3DArial size=3D2>Joaquin, </FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Con TBevel funciona:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>METHOD Panel1Painted( oSender, hDC, =
cPaintStruct=20
) CLASS TForm1</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂWITH OBJECT =
TCanvas():New(=20
SCREEN )<BR>ÂÂÂÂÂ :hDC :=3D=20
hDC<BR>ÂÂÂÂÂ :Rectangle( {0,0,10,10}=20
)<BR>ÂÂÂÂÂ :Destroy()<BR>ÂÂ END=20
WITH</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>RETURN Nil<BR></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><IMG alt=3D"" hspace=3D0=20
src=3D"cid:000501c6ef92$43372930$[email=5a0aa8c0@HPCOMPAQJOA]5a0aa8c0@HPCOMPAQJOA[/email]" =
align=3Dbaseline=20
border=3D0></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Ese cuadradito es lo que yo pinto. =
</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Un saludo</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>"Joaqu=EDn Mart=EDnez" <</FONT><A=20
href=3D"mailto:jmartial@interbook.net"><FONT face=3DArial=20
size=3D2>jmartial@interbook.net</FONT></A><FONT face=3DArial =
size=3D2>> escribi=F3=20
en el mensaje </FONT><A href=3D"news:452e1ec0$1@news.xailer.com"><FONT =
face=3DArial size=3D2>news:452e1ec0$1@news.xailer.com</FONT></A><FONT =
face=3DArial=20
size=3D2>...</FONT></DIV><FONT face=3DArial size=3D2>> =
Ignacio,<BR>> <BR>>=20
Prob=E9 un TPanel, luego un TBevel y luego un Tlabel.<BR>> <BR>> =
Ninguno=20
repinta, puede que el problema est=E9 en toda la jerarqu=EDa de =
clases, <BR>>=20
sino, alguno funcionar=EDa.<BR>> <BR>> <BR>> Gracias,<BR>> =
Joaqu=EDn<BR>> <BR>> "Ignacio Ortiz de Z=FA=F1iga" <</FONT><A =
href=3D"mailto:_support_@xailer.com"><FONT face=3DArial=20
size=3D2>_support_@xailer.com</FONT></A><FONT face=3DArial =
size=3D2>> escribi=F3 en=20
el mensaje <BR>> </FONT><A =
href=3D"news:452e11ad@news.xailer.com"><FONT=20
face=3DArial size=3D2>news:452e11ad@news.xailer.com</FONT></A><FONT =
face=3DArial=20
size=3D2>...<BR>>> Joaquin,<BR>>><BR>>> Utiliza un =
TBevel,=20
compruebo que el TPanel no recibe los eventos OnPaint y <BR>>>=20
OnPainted. Lo miraremos.<BR>>><BR>>> Un=20
saludo,<BR>>><BR>>> "Joaqu=EDn Mart=EDnez" <</FONT><A=20
href=3D"mailto:jmartial@interbook.net"><FONT face=3DArial=20
size=3D2>jmartial@interbook.net</FONT></A><FONT face=3DArial =
size=3D2>> escribi=F3=20
en el mensaje <BR>>> </FONT><A=20
href=3D"news:452da534$1@news.xailer.com"><FONT face=3DArial=20
size=3D2>news:452da534$1@news.xailer.com</FONT></A><FONT face=3DArial=20
size=3D2>...<BR>>>> Hola,<BR>>>><BR>>>> En =
un control=20
TPanel, intento con un TCanvas pintar un rect=E1ngulo, el =
<BR>>>>=20
problema es que no se repinta.<BR>>>><BR>>>> El =
pintado lo=20
llamo en OnPainted o en OnPaint, y parece que pinta algo, =
<BR>>>>=20
pero lo borra. Es muy r=E1pido.<BR>>>><BR>>>> =
=BFComo puedo=20
pintar encima y que se repinte cada vez que minimice y =
<BR>>>>=20
maximice por ejemplo?<BR>>>><BR>>>> <BR>>>> =
Un=20
Saludo,<BR>>>> =
Joaqu=EDn<BR>>>><BR>>> <BR>>>=20
<BR>> <BR>></FONT> </BLOCKQUOTE></BODY></HTML>
------=_NextPart_001_000B_01C6EFA3.077C4450--
------=_NextPart_000_000A_01C6EFA3.077C4450
Content-Type: image/png;
name="2006-10-14_095340.png"
Content-Transfer-Encoding: base64
Content-ID: <000501c6ef92$43372930$[email=5a0aa8c0@HPCOMPAQJOA]5a0aa8c0@HPCOMPAQJOA[/email]>
iVBORw0KGgoAAAANSUhEUgAAAHsAAAB0CAIAAAAq89r9AAAABmJLR0QAAAAA AAD5Q7t/AAAACXBI
WXMAAA7EAAAOxAGVKw4bAAABRklEQVR4nO3RsQ0CMRQFweu/AzogoCBaQLoe TAWcD2E2gHma0PrB
etsfd0rb9AVrKV5TvKZ4TfHa28Vv1wtnjDGWFR822/ri2+GmR37eV4q/+l7F d8V7itcUryleU7ym
eE3x2leKH2x65OetLz599ucUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa 4jXFa4rXFK8pXlO8
pnhN8ZriNcVritcUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa4jXFa4rX FK8pXlO8pnhN8Zri
NcVritcUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa4jXFa4rXFK8pXlO8 pnhN8ZriNcVritcU
ryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfHa4uKcsaz4sNNbU5wPKV5TvKZ4 TfGa4jXFa4rXFK8p
XnsCswEy5UNQHhYAAAAASUVORK5CYII=
------=_NextPart_000_000A_01C6EFA3.077C4450--
Attached files
------=_NextPart_000_000A_01C6EFA3.077C4450
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_000B_01C6EFA3.077C4450"
------=_NextPart_001_000B_01C6EFA3.077C4450
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Ignacio,
es cierto, pero usando el hDC no haciendo GetDC(), ese era el problema =
de que no saliera nada.
Pero a=FAn as=ED tengo un problema en el pintado, que de ah=ED las =
pruebas sobre los eventos de pintado y es el siguiente:
Lo que quiero hacer al pintar es un PlayMetafile() que es donde tengo =
pintado el cuadradito como el de tu ejemplo, lo que pasa es que no cabe =
en el bevel, entonces como no he visto la forma de que lo ajuste por =
alg=FAn m=E9todo que desconozco, he usado las siguientes funciones:
SetViewOrg() // Desplaza en Px
SetMapMode( hDC , MM_ISOTROPIC )
SetWindowExt( ... ) =20
SetViewportExt( .... )
PlayMeta(....)
Si estas instrucciones las pongo en un bot=F3n, me lo pinta =
perfectamente ajustado dentro del Bevel, pero si eso mismo lo pongo en =
el
OnPainted , me lo pinta grand=EDiiisimo.
=BFExiste alguna f=F3rmula de que funcione correctamente en el OnPainted =
o existe alg=FAn m=E9todo que me autoajuste el metafile en el bevel?
Ese es mi problema y es que no le encuentro la soluci=F3n.
Un Saludo y gracias,
Joaqu=EDn
"Ignacio Ortiz de Z=FA=F1iga" <_support_@xailer.com> escribi=F3 en el =
mensaje news:[email=4530980a@news.xailer.com...]4530980a@news.xailer.com...[/email]
Joaquin,=20
Con TBevel funciona:
METHOD Panel1Painted( oSender, hDC, cPaintStruct ) CLASS TForm1
WITH OBJECT TCanvas():New( SCREEN )
:hDC :=3D hDC
:Rectangle( {0,0,10,10} )
:Destroy()
END WITH
RETURN Nil
Ese cuadradito es lo que yo pinto.=20
Un saludo
"Joaqu=EDn Mart=EDnez" <jmartial@interbook.net> escribi=F3 en el =
mensaje news:452e1ec0$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
> Ignacio,
>=20
> Prob=E9 un TPanel, luego un TBevel y luego un Tlabel.
>=20
> Ninguno repinta, puede que el problema est=E9 en toda la jerarqu=EDa =
de clases,=20
> sino, alguno funcionar=EDa.
>=20
>=20
> Gracias,
> Joaqu=EDn
>=20
> "Ignacio Ortiz de Z=FA=F1iga" <_support_@xailer.com> escribi=F3 en =
el mensaje=20
> news:[email=452e11ad@news.xailer.com...]452e11ad@news.xailer.com...[/email]
>> Joaquin,
>>
>> Utiliza un TBevel, compruebo que el TPanel no recibe los eventos =
OnPaint y=20
>> OnPainted. Lo miraremos.
>>
>> Un saludo,
>>
>> "Joaqu=EDn Mart=EDnez" <jmartial@interbook.net> escribi=F3 en el =
mensaje=20
>> news:452da534$[email=1@news.xailer.com...]1@news.xailer.com...[/email]
>>> Hola,
>>>
>>> En un control TPanel, intento con un TCanvas pintar un =
rect=E1ngulo, el=20
>>> problema es que no se repinta.
>>>
>>> El pintado lo llamo en OnPainted o en OnPaint, y parece que pinta =
algo,=20
>>> pero lo borra. Es muy r=E1pido.
>>>
>>> =BFComo puedo pintar encima y que se repinte cada vez que minimice =
y=20
>>> maximice por ejemplo?
>>>
>>>
>>> Un Saludo,
>>> Joaqu=EDn
>>>
>>
>>=20
>=20
>
------=_NextPart_001_000B_01C6EFA3.077C4450
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.2900.2963" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Ignacio,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>es cierto, pero usando el hDC no =
haciendo GetDC(),=20
ese era el problema de que no saliera nada.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Pero a=FAn as=ED tengo un problema en =
el pintado, que=20
de ah=ED las pruebas sobre los eventos de pintado y es el =
siguiente:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Lo que quiero hacer al pintar es un =
PlayMetafile()=20
que es donde tengo pintado el cuadradito como el de tu ejemplo, lo que =
pasa es=20
que no cabe en el bevel, entonces como no he visto la forma de que lo =
ajuste por=20
alg=FAn m=E9todo que desconozco, he usado las siguientes =
funciones:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2> ÂÂÂÂÂÂ =20
SetViewOrg()ÂÂ // Desplaza en=20
Px<BR> ÂÂÂÂÂÂ SetMapMode( hDC , =
MM_ISOTROPIC=20
)<BR> ÂÂÂÂÂÂ SetWindowExt( ...=20
)ÂÂ<BR> ÂÂÂÂÂÂ SetViewportExt( =
.....=20
)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2> ÂÂÂÂÂÂ =20
PlayMeta(....)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Si estas instrucciones las pongo en un =
bot=F3n, me lo=20
pinta perfectamente ajustado dentro del Bevel, pero si eso mismo lo =
pongo en=20
el</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>OnPainted , me lo pinta =
grand=EDiiisimo.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>=BFExiste alguna f=F3rmula de que =
funcione=20
correctamente en el OnPainted o existe alg=FAn m=E9todo que me =
autoajuste el=20
metafile en el bevel?</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Ese es mi problema y es que no le =
encuentro la=20
soluci=F3n.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Un Saludo y gracias,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Joaqu=EDn</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<BLOCKQUOTE=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"Ignacio Ortiz de Z=FA=F1iga" <<A=20
href=3D"mailto:_support_@xailer.com">_support_@xailer.com</A>> =
escribi=F3 en el=20
mensaje <A=20
=
href=3D"news:4530980a@news.xailer.com">news:4530980a@news.xailer.com</A>.=
...</DIV>
<DIV><FONT face=3DArial size=3D2>Joaquin, </FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Con TBevel funciona:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>METHOD Panel1Painted( oSender, hDC, =
cPaintStruct=20
) CLASS TForm1</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂWITH OBJECT =
TCanvas():New(=20
SCREEN )<BR>ÂÂÂÂÂ :hDC :=3D=20
hDC<BR>ÂÂÂÂÂ :Rectangle( {0,0,10,10}=20
)<BR>ÂÂÂÂÂ :Destroy()<BR>ÂÂ END=20
WITH</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>RETURN Nil<BR></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><IMG alt=3D"" hspace=3D0=20
src=3D"cid:000501c6ef92$43372930$[email=5a0aa8c0@HPCOMPAQJOA]5a0aa8c0@HPCOMPAQJOA[/email]" =
align=3Dbaseline=20
border=3D0></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Ese cuadradito es lo que yo pinto. =
</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Un saludo</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>"Joaqu=EDn Mart=EDnez" <</FONT><A=20
href=3D"mailto:jmartial@interbook.net"><FONT face=3DArial=20
size=3D2>jmartial@interbook.net</FONT></A><FONT face=3DArial =
size=3D2>> escribi=F3=20
en el mensaje </FONT><A href=3D"news:452e1ec0$1@news.xailer.com"><FONT =
face=3DArial size=3D2>news:452e1ec0$1@news.xailer.com</FONT></A><FONT =
face=3DArial=20
size=3D2>...</FONT></DIV><FONT face=3DArial size=3D2>> =
Ignacio,<BR>> <BR>>=20
Prob=E9 un TPanel, luego un TBevel y luego un Tlabel.<BR>> <BR>> =
Ninguno=20
repinta, puede que el problema est=E9 en toda la jerarqu=EDa de =
clases, <BR>>=20
sino, alguno funcionar=EDa.<BR>> <BR>> <BR>> Gracias,<BR>> =
Joaqu=EDn<BR>> <BR>> "Ignacio Ortiz de Z=FA=F1iga" <</FONT><A =
href=3D"mailto:_support_@xailer.com"><FONT face=3DArial=20
size=3D2>_support_@xailer.com</FONT></A><FONT face=3DArial =
size=3D2>> escribi=F3 en=20
el mensaje <BR>> </FONT><A =
href=3D"news:452e11ad@news.xailer.com"><FONT=20
face=3DArial size=3D2>news:452e11ad@news.xailer.com</FONT></A><FONT =
face=3DArial=20
size=3D2>...<BR>>> Joaquin,<BR>>><BR>>> Utiliza un =
TBevel,=20
compruebo que el TPanel no recibe los eventos OnPaint y <BR>>>=20
OnPainted. Lo miraremos.<BR>>><BR>>> Un=20
saludo,<BR>>><BR>>> "Joaqu=EDn Mart=EDnez" <</FONT><A=20
href=3D"mailto:jmartial@interbook.net"><FONT face=3DArial=20
size=3D2>jmartial@interbook.net</FONT></A><FONT face=3DArial =
size=3D2>> escribi=F3=20
en el mensaje <BR>>> </FONT><A=20
href=3D"news:452da534$1@news.xailer.com"><FONT face=3DArial=20
size=3D2>news:452da534$1@news.xailer.com</FONT></A><FONT face=3DArial=20
size=3D2>...<BR>>>> Hola,<BR>>>><BR>>>> En =
un control=20
TPanel, intento con un TCanvas pintar un rect=E1ngulo, el =
<BR>>>>=20
problema es que no se repinta.<BR>>>><BR>>>> El =
pintado lo=20
llamo en OnPainted o en OnPaint, y parece que pinta algo, =
<BR>>>>=20
pero lo borra. Es muy r=E1pido.<BR>>>><BR>>>> =
=BFComo puedo=20
pintar encima y que se repinte cada vez que minimice y =
<BR>>>>=20
maximice por ejemplo?<BR>>>><BR>>>> <BR>>>> =
Un=20
Saludo,<BR>>>> =
Joaqu=EDn<BR>>>><BR>>> <BR>>>=20
<BR>> <BR>></FONT> </BLOCKQUOTE></BODY></HTML>
------=_NextPart_001_000B_01C6EFA3.077C4450--
------=_NextPart_000_000A_01C6EFA3.077C4450
Content-Type: image/png;
name="2006-10-14_095340.png"
Content-Transfer-Encoding: base64
Content-ID: <000501c6ef92$43372930$[email=5a0aa8c0@HPCOMPAQJOA]5a0aa8c0@HPCOMPAQJOA[/email]>
iVBORw0KGgoAAAANSUhEUgAAAHsAAAB0CAIAAAAq89r9AAAABmJLR0QAAAAA AAD5Q7t/AAAACXBI
WXMAAA7EAAAOxAGVKw4bAAABRklEQVR4nO3RsQ0CMRQFweu/AzogoCBaQLoe TAWcD2E2gHma0PrB
etsfd0rb9AVrKV5TvKZ4TfHa28Vv1wtnjDGWFR822/ri2+GmR37eV4q/+l7F d8V7itcUryleU7ym
eE3x2leKH2x65OetLz599ucUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa 4jXFa4rXFK8pXlO8
pnhN8ZriNcVritcUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa4jXFa4rX FK8pXlO8pnhN8Zri
NcVritcUryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfGa4jXFa4rXFK8pXlO8 pnhN8ZriNcVritcU
ryleU7ymeE3xmuI1xWuK1xSvKV5TvKZ4TfHa4uKcsaz4sNNbU5wPKV5TvKZ4 TfGa4jXFa4rXFK8p
XnsCswEy5UNQHhYAAAAASUVORK5CYII=
------=_NextPart_000_000A_01C6EFA3.077C4450--
Attached files
Problema con repintado
Joaquín,
es cierto, pero usando el hDC no haciendo GetDC(), ese era el problema de que no saliera nada.
Pero aún así tengo un problema en el pintado, que de ahí las pruebas sobre los eventos de pintado y es el siguiente:
Lo que quiero hacer al pintar es un PlayMetafile() que es donde tengo pintado el cuadradito como el de tu ejemplo, lo que pasa es que no cabe en el bevel, entonces como no he visto la forma de que lo ajuste por algún método que desconozco, he usado las siguientes funciones:
SetViewOrg() // Desplaza en Px
SetMapMode( hDC , MM_ISOTROPIC )
SetWindowExt( ... )
SetViewportExt( .... )
PlayMeta(....)
Si estas instrucciones las pongo en un botón, me lo pinta perfectamente ajustado dentro del Bevel, pero si eso mismo lo pongo en el
OnPainted , me lo pinta grandíiiisimo.
¿Existe alguna fórmula de que funcione correctamente en el OnPainted o existe algún método que me autoajuste el metafile en el bevel?
Ese es mi problema y es que no le encuentro la solución.
Quizás el problema esté en la forma de obtener el hdc, o en los valores que estés usando en las funciones SetWindowXXX() y SetViewXXX(). Necesitaría el código completo para hacer alguna prueba. Si quieres me lo puedes enviar por privado.
--
Un saludo,
José F. Giménez
http://www.xailer.com
--
es cierto, pero usando el hDC no haciendo GetDC(), ese era el problema de que no saliera nada.
Pero aún así tengo un problema en el pintado, que de ahí las pruebas sobre los eventos de pintado y es el siguiente:
Lo que quiero hacer al pintar es un PlayMetafile() que es donde tengo pintado el cuadradito como el de tu ejemplo, lo que pasa es que no cabe en el bevel, entonces como no he visto la forma de que lo ajuste por algún método que desconozco, he usado las siguientes funciones:
SetViewOrg() // Desplaza en Px
SetMapMode( hDC , MM_ISOTROPIC )
SetWindowExt( ... )
SetViewportExt( .... )
PlayMeta(....)
Si estas instrucciones las pongo en un botón, me lo pinta perfectamente ajustado dentro del Bevel, pero si eso mismo lo pongo en el
OnPainted , me lo pinta grandíiiisimo.
¿Existe alguna fórmula de que funcione correctamente en el OnPainted o existe algún método que me autoajuste el metafile en el bevel?
Ese es mi problema y es que no le encuentro la solución.
Quizás el problema esté en la forma de obtener el hdc, o en los valores que estés usando en las funciones SetWindowXXX() y SetViewXXX(). Necesitaría el código completo para hacer alguna prueba. Si quieres me lo puedes enviar por privado.
--
Un saludo,
José F. Giménez
http://www.xailer.com
--