Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-02-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Aclaremos que TFontStyles no es un array, es un "set of" muchas veces nombrados como "conjuntos".
Lo que podrías hacer es descomponer este "conjunto", e ir agregando valores a una variable, y a la inversa por ejemplo:
Código:
function FontStyleToInteger(AStyle: TFontStyles): Integer;
begin
  Result := 0;

  if fsBold in AStyle Then
    Result := Result or $1;

  if fsItalic in AStyle Then
    Result := Result or $2;

  if fsUnderline in AStyle Then
    Result := Result or $4;

  if fsStrikeOut in AStyle Then
    Result := Result or $8;
end;

function IntegerToFontStyle(Value: Integer): TFontStyles;
begin
  Result := [];

  if (Value and $1) = $1 Then
    Include(Result, fsBold);

  if (Value and $2) = $2 Then
    Include(Result, fsItalic);

  if (Value and $4) = $4 Then
    Include(Result, fsUnderline);

  if (Value and $8) = $8 Then
    Include(Result, fsStrikeOut);
end;
Otras ideas que se me ocurren, es copiar el dato de en memoria a un string, o utilizar las WinApi´s para obtener este tipo de valor del dato de la fuente.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #2  
Antiguo 10-02-2004
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Me uno a la Sugerencia de Delphi.com.ar añadiendo que se guarde en la base de datos como un String con el siguiente formato:

Tipo de fuente:tamaño de fuente : opciones de negrita y demás
Ejemplo: Times New Roman:12:5


Lo guardas como un String en la base de datos, y despues al recuperarlo, usas un StringList en el que cargas la linea al completo, usando como separador los dos puntos ":"
Código:
MiStringList.delimitedChar := ':';
MiStringList.delimitedText:= <Linea de la base de datos>

nombre := MiStringList[0];
tamaño := MiStringList[1];
opciones:= MiStringList[2];
No sé si te gustará la idea. Saludos

Última edición por Lepe fecha: 10-02-2004 a las 18:49:00.
Responder Con Cita
  #3  
Antiguo 11-02-2004
ciscu ciscu is offline
Miembro
 
Registrado: jun 2003
Ubicación: Granollers
Posts: 114
Poder: 21
ciscu Va por buen camino
Saludos cordiales....!!!

Gracias por responderme, seguro que de una u otra forma me saldrá bien!!

Saludos!!!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 23:48:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi