Pantalla ampliada

Pantalla ampliada

Postby miarcod » Sun Jul 01, 2012 10:26 am

Hola,

Si es posible necesitaría concocer cuando un escritorio en Windows 7 tiene activada la opción de mostrar los elementos de pantalla al 125%. Esto es debido a lo siguiente:

Cuando muestro un tcbrowse en pantalla leo de un fichero de configuración el tamaño de cada una de las columnas que lo componen. p.e.. col1=10, col2=100, col3=200.
Al finalizar el browse grabo en ese fichero de configuracion el tamaño que tienen al final, por lo que si se cambio el ancho de alguna columna este cambio queda guardado en el fichero de configuracion y al volver a cargar el browse aparece igual que se dejó la ultima vez, pero el caso es que cuando el usuario tiene activada esta opción en windows 7 el tamaño de las columnas se me multiplica por 1.25, es decir col1=12.5, col2=125, col3=250 con lo que me descuadra todo el browse, ya que este fichero lo utilizan otros equipos que no tienen activada esta opcion.

Se me ocurre que si puedo detectar que el equipo tiene activada esta opcion al guardar los datos en el fichero los ajusto dividiendo por 1.25 pero no se como puedo detectar esto.

Gracias de antemano
miarcod
 
Posts: 199
Joined: Tue Oct 11, 2005 2:17 pm

Re: Pantalla ampliada

Postby Bayron » Sun Jul 01, 2012 2:43 pm

Pienso que la solucion sería que guardaras en lugar de pixeles, porcentajes de la resolucion, usando la regla de 3, p.e.

Code: Select all  Expand view
resolucion := WndWidth(  GetDesktopWindow()  )

AnchoColumna1 := ( AnchoPixeles * 100 ) / resolucion

 


Luego al crear el Browse haces lo contrario


Code: Select all  Expand view
resolucion := WndWidth(  GetDesktopWindow()  )

PorcentajeColumna1 := ( AnchoColumna1 * resolucion ) / 100

 


Creo que asi va... (no lo he probado)

Aunque no entiendo por qué se te distorciona el Browse, yo lo he probado aqui, y WndWidth( GetDesktopWindow() ) me retorna la misma resolución aunque cambie el tamaño de los elementos, y creo que el cambio lo hace internamente Windows...

Lo más seguro es, que los otros equipos tienen resoluciones diferentes y eso causa el problema, pero utilizando porcentajes, pienso que se te resolverá...
=====>

Bayron Landaverry
(215)2226600 Philadelphia,PA, USA
+(502)46727275 Guatemala
MayaBuilders@gMail.com

FWH12.04||Harbour 3.2.0 (18754)||BCC6.5||UEstudio 10.10||
Windows 7 Ultimate

FiveWin, One line of code and it's done...
User avatar
Bayron
 
Posts: 815
Joined: Thu Dec 24, 2009 12:46 am
Location: Philadelphia, PA


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 61 guests