Salve,
sapete se esiste un sistema per avere l'handle oWnd dell'applicazione in uso
o devo passarlo necessariamente come parametro dal modulo nel quale creo la finestra ownd ?
Handle ownd di un'applicazione
Moderator: Enrico Maria Giordano
- Marco Turco
- Posts: 858
- Joined: Fri Oct 07, 2005 12:00 pm
- Location: London
- Contact:
Handle ownd di un'applicazione
Best Regards,
Marco Turco
SOFTWARE XP LLP
Marco Turco
SOFTWARE XP LLP
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
- Marco Turco
- Posts: 858
- Joined: Fri Oct 07, 2005 12:00 pm
- Location: London
- Contact:
Re: Handle ownd di un'applicazione
Funziona, grazie.
Approfitto anche per chiedere un tuo parere su una strana situazione che ho con un cliente.
In pratica le mie applicazioni FWH utilizzano un'interfaccia office style in modo da potersi adattare al meglio allo schermo del cliente ossia alla risoluzione utilizzata. Vedi un esempio su www.softwarexp.co.uk/beta/interface.png
Per adattare le finestre alla risolutione utilizzo oWnd:oWndClient:nWidth e oWnd:oWndClient:nHeight,
la cosa strana è che per esempio sul mio portatile 1280x800 mi appare un'area utilizzabile leggermente maggiore
vedi www.softwarexp.co.uk/beta/system.png
e credo che sul computer di questo mio cliente l'area utilizzabile sia ancora maggiore, infatti le finestre mi risultano troncate come se per il programma ci fosse un'area utilizzabile maggiore.
In pratica oWnd:oWndClient:nWidth da risultati in alcuni casi superiori alla effettiva risoluzione. Come è possibile ?
Approfitto anche per chiedere un tuo parere su una strana situazione che ho con un cliente.
In pratica le mie applicazioni FWH utilizzano un'interfaccia office style in modo da potersi adattare al meglio allo schermo del cliente ossia alla risoluzione utilizzata. Vedi un esempio su www.softwarexp.co.uk/beta/interface.png
Per adattare le finestre alla risolutione utilizzo oWnd:oWndClient:nWidth e oWnd:oWndClient:nHeight,
la cosa strana è che per esempio sul mio portatile 1280x800 mi appare un'area utilizzabile leggermente maggiore
vedi www.softwarexp.co.uk/beta/system.png
e credo che sul computer di questo mio cliente l'area utilizzabile sia ancora maggiore, infatti le finestre mi risultano troncate come se per il programma ci fosse un'area utilizzabile maggiore.
In pratica oWnd:oWndClient:nWidth da risultati in alcuni casi superiori alla effettiva risoluzione. Come è possibile ?
Best Regards,
Marco Turco
SOFTWARE XP LLP
Marco Turco
SOFTWARE XP LLP
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: Handle ownd di un'applicazione
Questa è la funzione che uso io per disegnare un bitmap sulla finestra principale, vedi un po' se ne trai qualcosa di utile per te:
EMG
Code: Select all
FUNCTION PAINTBGBMP( oWnd, hDC, hBmp )
LOCAL aRct := GETCLIENTRECT( oWnd:hWnd )
LOCAL nTop, nLft, nWdt, nHgt
IF hBmp = 0; RETURN NIL; ENDIF
nTop := IF( oWnd:oBar = NIL, 0, oWnd:oBar:nHeight() - 1 )
nLft := 0
nWdt := aRct[ 4 ]
nHgt := aRct[ 3 ] - nTop - IF( oWnd:oMsgBar = NIL, 0, oWnd:oMsgBar:nHeight() )
PALBMPDRAW( hDC, nTop, nLft, hBmp, , nWdt, nHgt )
RETURN NIL