FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Decidir si Font es Bold o no
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Decidir si Font es Bold o no
Posted: Thu Dec 01, 2016 03:22 AM
Amigos, saludos.
Hay alguna manera para decidir si queremos BOLD o no, desde una variable, sin hacer lo siguiente?

Code (fw): Select all Collapse
 if lNegrilla
    DEFINE FONT oFont  NAME "Arial" SIZE nWdFont, nHtFont BOLD OF oPrn
 else
    DEFINE FONT oFont  NAME "Arial" SIZE nWdFont, nHtFont OF oPrn
 endif


Otra:
La function Lower(cCad) no convierte la "Ñ" a "ñ". Alguna manera de solucionarlo?

Gracios
Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 1283
Joined: Fri Feb 10, 2006 02:34 PM
Re: Decidir si Font es Bold o no
Posted: Thu Dec 01, 2016 06:43 AM
Francisco,

FranciscoA wrote:
Code (fw): Select all Collapse
 if lNegrilla
    DEFINE FONT oFont  NAME "Arial" SIZE nWdFont, nHtFont BOLD OF oPrn
 else
    DEFINE FONT oFont  NAME "Arial" SIZE nWdFont, nHtFont OF oPrn
 endif



Usa directament la clase para declarar el objeto, pasando la variable lNegrilla
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
HIX -> https://github.com/carles9000/hix
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Decidir si Font es Bold o no
Posted: Thu Dec 01, 2016 08:55 AM
FranciscoA wrote:Amigos, saludos.
Hay alguna manera para decidir si queremos BOLD o no, desde una variable, sin hacer lo siguiente?

Code (fw): Select all Collapse
 if lNegrilla
    DEFINE FONT oFont  NAME "Arial" SIZE nWdFont, nHtFont BOLD OF oPrn
 else
    DEFINE FONT oFont  NAME "Arial" SIZE nWdFont, nHtFont OF oPrn
 endif


Otra:
La function Lower(cCad) no convierte la "Ñ" a "ñ". Alguna manera de solucionarlo?

Gracios


Puedes intentarlo asi


    DEFINE FONT oFont  NAME "Arial" SIZE nWdFont, nHtFont OF oPrn
oFont:lBold := lNegrilla
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 1515
Joined: Thu Oct 30, 2008 02:37 PM
Re: Decidir si Font es Bold o no
Posted: Thu Dec 01, 2016 11:16 AM
Francisco,

A ese tema le dediqué exclusivamente un post:

Y ya metidos en harina de comandos mal diseñados
Supongamos:

ACTIVATE WINDOW CENTER MAXIMIZED

¿ Qué pasa si la ventana será centrada a veces si o a veces no ? ¿ O maximizada si o maximizada no ?

Con lo facil que habria sido poner:

ACTIVATE WINDOW ;
CENTER lConCenter ;
MAXIMIZED lConMaximized



viewtopic.php?f=6&t=30055#p171359

Saludos
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Decidir si Font es Bold o no
Posted: Thu Dec 01, 2016 03:22 PM
Carles, Cristóbal, hmpaquito. Gracias por responder.

Carles:
Voy a intentar como dices.

Cristóbal:
No me funcionó, siempre pone la letra estándard.
Code (fw): Select all Collapse
lNegrilla := .t.
    DEFINE FONT oFont  NAME "Arial" SIZE nWdFont, nHtFont OF oPrn
   oFont:lBold := lNegrilla


hmpaquito:
Gracias por tu información.

Alguna otra sugerencia?

Saludos.
Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Decidir si Font es Bold o no (SOLUCIONADO)
Posted: Thu Dec 01, 2016 05:30 PM
Gracias a todos.
Funcionó de la manera sugerida por Carles:

Code (fw): Select all Collapse
nWdFont:= 0
nHtFont:= -10

 oFont := TFont():New( "Arial", nWdFont, ( oPrn:nLogPixelY() / 72 ) * nHtFont, .f., lNegrilla )

Saludos
Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Decidir si Font es Bold o no
Posted: Thu Dec 01, 2016 05:44 PM

Si, evidente, de la forma que yo he puesto no puede funcionar

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Decidir si Font es Bold o no
Posted: Fri Dec 02, 2016 02:55 AM

Cristóbal.
Al estudiar un poco la clase, me doy cuenta que existe la Data que mencionas. Lo que me extraña es que por qué no funciona.
De la misma classe fué que tomé oPrn:nLogPixelY() / 72 , ya que sin esto las letras aparecían extremadamente diminutas.

Muchas gracias por tu interés y tiempo.

Saludos.

Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Decidir si Font es Bold o no
Posted: Fri Dec 02, 2016 09:19 AM
El tema es que una vez creada no puede ser modificada.
Pero, también, para tu información, siempre puedes, a partir de un font definido crear otro con alguna modificación sobre ella ( CreateFontIndirect ), lo mismo ocurre con otros recursos como los brush ( CreateBrushIndirect )
Para ello, puedes utilizar la function


hNewFont := CREATEFONTAS( oFont:hFont, oFont:lbold, oFont:lUnder, oFont:lItalic, oFont:nHeight )

//y, en tu caso, sería, por ejemplo ( para cambiar de bold o no bold y viceversa )

hNewFont := CREATEFONTAS( oFont:hFont, !oFont:lbold, oFont:lUnder, oFont:lItalic, oFont:nHeight )


que fácilmente podrías modificar para crear otra con las mismas características que la actual pero con otro cFaceName, añadiendo un parámetro más

Otra posibilidad, es hacer después ( que no he probado ), para intentar seguir usando el mismo oFont

oFont:hFont := hNewFont


Y, seguramente te obligue también, en cualquier caso a hacer al final de su uso

DeleteObject( hNewFont )
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Decidir si Font es Bold o no
Posted: Fri Dec 02, 2016 11:48 PM

Cristóbal,
Gracias por la información. La tendré en cuenta.
Saludos.

Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql

Continue the discussion