FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Longitud de SAYS con GetTextWidth
Posts: 418
Joined: Wed Nov 26, 2008 06:33 PM
Longitud de SAYS con GetTextWidth
Posted: Sun Mar 15, 2015 07:04 PM

Saludotes:

Un asunto que habia dejado pero que no me funciona con los TSay

creo says para desplegar datos en pantalla normal, sin recursos, ejemplo sencillo:

function DespDatos()
local oFontS
local oDat1,cDat1:='Observaciones'
local oDat2,cDat2:='Datos de la cotización'

bPant es mi dialogo

DEFINE FONT oFontS NAME "ARIAL" SIZE 0,-20 BOLD

@ 1,10 SAY oDat1 VAR cDat1 PICTURE OF bPant FONT oFontS PIXEL SIZE GetTextWidth(0,cDat1,oFontS),20
@ 3,30 SAY oDat2 VAR cDat2 PICTURE OF bPant FONT oFontS PIXEL SIZE GetTextWidth(0,cDat2,oFontS),20
etc.....
....
...
return NIL

mi preguntota: Al desplegar los says en la pantalla, la longitud del say es casi el doble del la longitud en pixeles del dato desplegado, al suponer que el
GetTextWidth(0,cDat1,oFontS) me devuelve la longitud correcta.

Noé Aburto Sánchez
Tec. Prog. de Sistemas. -Morelia, Mich. México.
fwh 20.06, Harbour 3.2.0, bcc 7.4
TsBrowse 9.0, TsButton 7.0, xEdit 6.1
naburtos@gmail.com, noeaburto67@hotmail.com
Posts: 458
Joined: Tue Mar 14, 2006 07:26 PM
Re: Longitud de SAYS con GetTextWidth
Posted: Mon Mar 16, 2015 11:00 AM

Puedes probar esto ?

oWnd:GetWidth( cText, oFont ) -> Devuelve el ancho

Teniendo en cuenta que oWnd es el padre del TSAY, normalmente un objeto TDialog, TWindows o TPanel por ejemplo.

Un Saludo,

Joaquín Martínez
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Longitud de SAYS con GetTextWidth
Posted: Mon Mar 16, 2015 01:17 PM

If you are using SAY on a dialog use GetTextWidth(...) / 2
If you are using SAY on window, or DIALOG ...TRUEPIXEL or ON INIT DIALOG or on folders, you can use GetTextWidth(...) without /2.

Regards



G. N. Rao.

Hyderabad, India

Continue the discussion