FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
obtener color de FontDialog1
La idea es conseguir el codigo de color, si está en negrita, si está en cursiva y el tamaño de la letra de un FontDialog1. Solo consigo el nombre de la fuente con la orden edit1.text:=RichEdit1.SelAttributes.Name.
Alguna idea ? Gracias procedure TForm1.SelectFont(Sender :TObject); begin FontDialog1.Font.Assign(RichEdit1.SelAttributes); if (FontDialog1.Execute) then RichEdit1.SelAttributes.Assign( FontDialog1.Font ); edit1.text:= RichEdit1.SelAttributes.Name; RichEdit1.SetFocus; end; |
#2
|
|||
|
|||
Ahora ya tan sólo me falta saber el color
Última edición por marcoszorrilla fecha: 25-05-2005 a las 19:22:36. |
#3
|
||||
|
||||
El color es un número:
Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#4
|
|||
|
|||
Otra solucion
Gracias marcos por tu aportación. Al final lo conseguí sacar con un codigo mucho mas largo, luego lo modicaré usando tu instrucción. Por si alguno le interesa otra forma de hacerlo menos optima es la siguiente :
procedure TForm1.SelectFont(Sender :TObject); var color,font:string; size:integer; negrita,cursiva,subrayado:boolean; begin FontDialog1.Font.Assign(RichEdit1.SelAttributes); if (FontDialog1.Execute) then begin // RichEdit1.SelAttributes.Assign( FontDialog1.Font ); // Cogeria todas las propiedades // Determina que propiedades coger del FontDialog RichEdit1.SelAttributes.Color:=FontDialog1.Font.Color; RichEdit1.SelAttributes.Name:=FontDialog1.Font.Name; RichEdit1.SelAttributes.Size:=FontDialog1.font.Size; RichEdit1.SelAttributes.Style:=FontDialog1.Font.Style; end; font:= RichEdit1.SelAttributes.Name; size:=RichEdit1.SelAttributes.Size; if (fsBold in RichEdit1.SelAttributes.Style) then negrita:=true; if (fsItalic in RichEdit1.SelAttributes.Style) then cursiva:=true; if (fsUnderline in RichEdit1.SelAttributes.Style) then subrayado:=true; case RichEdit1.SelAttributes.Color of clAqua : color:='clAgua'; clblack : color:='clBlack'; clBlue : color:='clBlue'; clCream : color:='clCream'; clDkGray : color:='clDkGray'; clFuchsia : color:='clFuchsia'; clGreen : color:='clGreen'; clLime : color:='clLime'; clLtGray : color:='clLtGray'; clMaroon : color:='clMaroon'; clMedGray : color:='clMedGray'; clMoneyGreen : color:='clMoneyGreen'; clNavy : color:='clNavy'; clOlive : color:='clOlive'; clPurple : color:='clPurple'; clRed : color:='clRed'; clSkyBlue : color:='clSkyBlue'; clTeal : color:='clTeal'; clWhite : color:='clWhite'; clYellow : color:='clYellow'; else color:='clBlack'; end; RichEdit1.SetFocus; end; |
#5
|
||||
|
||||
Si lo que queres es encontrar la descripción textual de un color, la unidad Graphics tiene la función ColorToString que básicamente hace lo que vos estas haciendo aqui, pero de forma mas óptima.
Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#6
|
||||
|
||||
Y como para algo ha de querer guardar el nombre del color supongo que también le interesará la función inversa StringToColor.
// Saludos |
|
|
|