Ver Mensaje Individual
  #3  
Antiguo 03-06-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola kaua77.

Si como dice el título de tu mensaje deseas las ("esquinas ovaladas") podes hacer:
Código PHP:
void roundCtrlTWinControlwc ) {
  
TRect rct wc->ClientRect;
  
HRGN  rgn CreateRoundRectRgnrct.leftrct.toprct.right,
    
rct.bottom2525 );

  
SendMessagewc->HandleEM_GETRECT0, (LPARAM)&rct );
  
InflateRect( &rct, -5, -);
  
SendMessage (wc->HandleEM_SETRECTNP0, (LPARAM)&rct );
  
SetWindowRgnwc->Handlergntrue );
  
wc->Invalidate();

Ejemplo de uso:
Código PHP:
void __fastcall TForm1::Button1Click(TObject *Sender) {
  
roundCtrl(Button1);
  
roundCtrl(Memo1);
  ...  
etc

Ahora, como dice el texto de tu mensaje: "sus cuatro lados ovalados" (como si estuviese inflado), vas a tener que hacer lo que te sugiere kapcomx.

Si por otro lado desearas darle forma elíptica:
Código PHP:
void ellipticalCtrl(TWinControlwc) {
  
HRGN   rgn;

  
rgn CreateEllipticRgn(22wc->Width 2wc->Height 2);
  
SetWindowRgn(wc->Handlergntrue);

Ejemplo de uso:
Código PHP:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  
ellipticalCtrl(Button1);   // form->color <> clBtnFace
  
ellipticalCtrl(Memo1); 
  ... 
etc

En este último caso y tratándose de un TButton que no posee la propiedad Color, servirá solo si el form es de otro color ya que si el color del form es clBtnFace al desaparecer sus bordes sólo se verá la leyenda (Caption) del botón.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 03-06-2015 a las 21:30:31.
Responder Con Cita