He presentado una solicitud cuyo aspecto se basa en tmetro clase. En el PC funciona bien, pero el portátil no se ajusta a las dimensiones de la pantalla.
Tengo que forzar tmetro clase de auto-ajuste?
Gracias de antemano
// -------------------------------------------------------------------------- //
// ----------------------------- Defini‡äes iniciais ------------------------ //
// -------------------------------------------------------------------------- //
#include "FiveWin.ch"
#include "metro.ch"
extern DbfCdx
// -------------------------------------------------------------------------- //
// --------------------------- Programa principal --------------------------- //
// -------------------------------------------------------------------------- //
FUNCTION Main()
LOCAL oMain
MsgLogo( "..\gfx\logotipo.png" )
SET DATE TO BRITISH
SET DELETE ON
SET CONFIRM ON
SET SOFTSEEK ON
REQUEST DBFCDX
RddSetDefault( "DBFCDX" )
// --------------------------------------------------------- //
// ------------------ Inic¡o do programa ------------------- //
// --------------------------------------------------------- //
DEFINE METRO oMain ;
TITLE "GESTAO INTEGRADA DA AUTARQUIA" ;
BACKGROUND "..\gfx\logotipo.bmp"
DEFINE METROBUTTON OF oMain ;
PROMPT "Residentes" ;
COLOR CLR_WHITE, RGB( 234, 112, 39 ) ;
IMAGE "..\gfx\users.bmp"
DEFINE METROBUTTON OF oMain ;
PROMPT "Sair" ;
COLOR CLR_WHITE, RGB( 2, 174, 224 ) ;
IMAGE "..\gfx\exit.bmp" ;
ACTION If( MsgYesNo( "Want to exit ?" ), oMain:End(),)
ACTIVATE METRO oMain
RETURN nil
Function CalculaRes( nTp ) // nTp -> 0 Ancho nTp -> 1 Alto
local nAncho
local nAlto
local nPorcAnc
local nPorcAlt
DEFAULT nTp := 0
nAncho := GetSysMetrics( 0 )
nAlto := GetSysMetrics( 1 )
nPorcAnc := Round( ( nAncho/1920 ) , 4 )
nPorcAlt := Round( ( nAlto/1080 ) , 4 )
Return IF( Empty( nTp ), nPorcAnc, nPorcAlt )
METHOD New( cTitle, nBtnWidth, nBtnHeight, cFileName ) CLASS TMetro
DEFAULT cTitle := "MyApp", nBtnWidth := 132, nBtnHeight := 132
::cTitle = cTitle
::aButtons = {}
::nBtnWidth = nBtnWidth
::nBtnHeight = nBtnHeight
::nOriginX = Round( 200 * CalculaRes( 0 ), 0 ) // Aqui
::nOriginY = Round( 200 * CalculaRes( 1 ), 0 ) // Aqui
::nRow = 0
::nCol = 0
.../...
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: No registered users and 68 guests