FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour quiero definir fuentes que esten disponible en toda la app
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
quiero definir fuentes que esten disponible en toda la app
Posted: Sat Nov 06, 2021 12:38 PM
ola.
tengo varias clases, cada una hace su cometido en la app,
y todas tienen browser.

quier definir "algo" pienso en una clase pero no me estaria funcionando, para definir algunas fuentes y que pueda
utilizarla desde las diferentes clases que tengo.
he hecho esto:
Code (fw): Select all Collapse
CLASS TFuentes
   DATA oFontEncabezado
   DATA oFontCelda

   METHOD new() CONSTRUCTOR
ENDCLASS
//------------------------------------------------------------------------------
METHOD new() CLASS TFuentes

   DEFINE FONT ::oFontEncabezado NAME "Tahoma" SIZE 0, - 16 bold
   DEFINE FONT ::oFontCelda NAME "Tahoma" SIZE 0, - 16

   RETURN ( Self )

//------------------------------------------------------------------------------


pero si la llamo como ser desde mi clase que quiero utilizarla me dice que no la encuentra

Code (fw): Select all Collapse
CLASS TApp FROM TFuentes
.....
endclass
....

with object ::oBrw
      WITH OBJECT :aCols[ 1 ]
         :cHeader       := "Id"
         :nWidth        := 80
         :nHeadStrAlign := AL_CENTER

         :oHeaderFont   := ::oFontEncabezado
         :oDataFont     := ::oFontCelda
      END WITH


cual es el problema? que la fuente no se muestra y si hago esto:
Code (fw): Select all Collapse
fwdbg ::oFontEncabezado

no me devuelve nda. ni si quiera una referencia al afuente
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 244
Joined: Fri Oct 28, 2005 06:29 PM
Re: quiero definir fuentes que esten disponible en toda la app
Posted: Sat Nov 06, 2021 01:40 PM
Hola

Me parece que la clase TApp no debería definirse como FROM TFuentes

Yo haría asi:

Code (fw): Select all Collapse
CLASS TApp

DATA oFuentes
.....
ENDCLASS

METHOD New() CLASS TApp

  ::oFuentes := TFuentes():New()
....


// Para el browse:

with object ::oBrw

      WITH OBJECT :aCols[ 1 ]

         :cHeader       := "Id"
         :nWidth        := 80
         :nHeadStrAlign := AL_CENTER

         :oHeaderFont   := ::oFuentes:oFontEncabezado
         :oDataFont       := ::oFuentes:oFontCelda

      END WITH



Saludos
Alejandro Cebolido

Buenos Aires, Argentina
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: quiero definir fuentes que esten disponible en toda la app
Posted: Sat Nov 06, 2021 02:02 PM
Code (fw): Select all Collapse
#Include "FiveWin.Ch"

//----CLasse

CLASS TPublic

   METHOD New()  CONSTRUCTOR

ENDCLASS

METHOD New() CLASS TPublic

   Public TFecha, oFont, oFnt, oFont1, oFont2, oFont3

   TFecha := Date()

   DEFINE FONT oFont  NAME "Ms Sans Serif"  SIZE 00, -14 BOLD
   DEFINE FONT oFnt   NAME "Ms Sans Serif"  SIZE 00, -12 BOLD
   DEFINE FONT oFont1 NAME "Calibri"        SIZE 0,  -14
   DEFINE FONT oFont2 NAME "Segoe UI Light" SIZE 0,  -18
   DEFINE FONT oFont3 NAME "Segoe UI"       SIZE 0,  -26

RETURN Self

//-------Seus PRGs - Para Pegar Variaveis publicas
// Datos := TPublic():New()

// ? TFecha


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: quiero definir fuentes que esten disponible en toda la app
Posted: Sat Nov 06, 2021 02:58 PM
TecniSoftware wrote:Hola

Me parece que la clase TApp no debería definirse como FROM TFuentes

Yo haría asi:

Code (fw): Select all Collapse
CLASS TApp

DATA oFuentes
.....
ENDCLASS

METHOD New() CLASS TApp

  ::oFuentes := TFuentes():New()
....


// Para el browse:

with object ::oBrw

      WITH OBJECT :aCols[ 1 ]

         :cHeader       := "Id"
         :nWidth        := 80
         :nHeadStrAlign := AL_CENTER

         :oHeaderFont   := ::oFuentes:oFontEncabezado
         :oDataFont       := ::oFuentes:oFontCelda

      END WITH



Saludos


Consulto, pero al hacerl FROM... estoy heredando los metodos y datos de TFuentes... o no?
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: quiero definir fuentes que esten disponible en toda la app
Posted: Sat Nov 06, 2021 02:59 PM
karinha wrote:
Code (fw): Select all Collapse
#Include "FiveWin.Ch"

//----CLasse

CLASS TPublic

   METHOD New()  CONSTRUCTOR

ENDCLASS

METHOD New() CLASS TPublic

   Public TFecha, oFont, oFnt, oFont1, oFont2, oFont3

   TFecha := Date()

   DEFINE FONT oFont  NAME "Ms Sans Serif"  SIZE 00, -14 BOLD
   DEFINE FONT oFnt   NAME "Ms Sans Serif"  SIZE 00, -12 BOLD
   DEFINE FONT oFont1 NAME "Calibri"        SIZE 0,  -14
   DEFINE FONT oFont2 NAME "Segoe UI Light" SIZE 0,  -18
   DEFINE FONT oFont3 NAME "Segoe UI"       SIZE 0,  -26

RETURN Self

//-------Seus PRGs - Para Pegar Variaveis publicas
// Datos := TPublic():New()

// ? TFecha



Regards, saludos.


hola pero si defino como DATA en vez de "public" se estaria heredando tambien las data... o no es lo mismo que en "C"?
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Re: quiero definir fuentes que esten disponible en toda la app
Posted: Mon Nov 08, 2021 03:59 PM
Yo lo utilizo asi:

Code (fw): Select all Collapse
class tapp

   DATA aWFont               INIT {}           //-- Array de Fonts 
...
...
...
endclass


en tu programa inicial

Code (fw): Select all Collapse
 #Include "FiveWin.Ch"
..
MEMVAR oApp

function main()

 oApp    := TApp()
..
..
 IniciarFonts()
..
..
..
AEval( oApp:aWFont, {|e| IIF(e!=Nil, e:End(), Nil )} )

return .t.

Function IniciarFonts() 

 oApp:aWFont := ARRAY( 5 )

 DEFINE FONT   oApp:aWFont[1] NAME "Segoe WP"              SIZE 0, -17                 //  OK
 DEFINE FONT   oApp:aWFont[2] NAME "Segoe WP"              SIZE 0, -27                 //  OK
 DEFINE FONT   oApp:aWFont[3] NAME "Sagoe UI Light"        SIZE 0, -14                 //  OK
 DEFINE FONT   oApp:aWFont[4] NAME "Segoe UI Light"        SIZE 0, -32                 //  Titulos Gigantes en cualquier Dialogo
 DEFINE FONT   oApp:aWFont[5] NAME "Segoe UI Light"        SIZE 0, -20            //  OK

return nil


y en los programas individuales se utiliza como siempre

Code (fw): Select all Collapse
...
...
                   REDEFINE SAY ID -16 OF oDlg PROMPT "N° Contrato"  FONT oApp:aWFont[3]
...
...


Saludos
SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: quiero definir fuentes que esten disponible en toda la app
Posted: Mon Nov 08, 2021 07:32 PM
Hola

Pude resolverlo de esta forma: no entiendo aun porque no se inicializan los objetos automaticamente...

Code (fw): Select all Collapse
#Include "FiveWin.Ch"

CLASS TFuentes
   data oFont1
   data oFont2

   METHOD New()  CONSTRUCTOR

ENDCLASS

METHOD New() CLASS TFuentes

   DEFINE FONT ::oFont1  NAME "Ms Sans Serif"  SIZE 00, -14 BOLD
   DEFINE FONT ::oFont2  NAME "Ms Sans Serif"  SIZE 00, -14 

RETURN  (Self)

------------------------------------------------

//despues del FROM la clase que primero tiene que ir es TFuentes, sino no funciona (no lo entiendo)

class TAPP FROM TFuentes, T....
    .....
   method new() constructor
   ...
end class

method new() class TApp
   ...
   ...
   ::Super:new()    // con esto inicializa TFuentes (no entiendo porque no fuiona si la primer clase despues del FROM no es TFuentes
   ...
return (self)
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/

Continue the discussion