Italian [B4J] Centrare page

Aldo's

Active Member
Licensed User
Ciao a tutti.
Vorrei sapere come fare in B4J a centrare una page di dimensioni ridotte (600x250).
Grazie
 

Aldo's

Active Member
Licensed User
Dai un'occhiata questo (cosa che io non ho fatto e non lo ricordo, pur avendoci scritto ?)
https://www.b4x.com/android/forum/threads/fixed-b4xpages-and-center-form-in-screen.137201/
Ho dato un'occhiata e ho capito anche il senso.
L'unico problema è dato dalla seconda riga di questa funzione, non riconosce fx!
B4X:
Sub CenterForm(f As Form)
   Dim ps As Screen = fx.PrimaryScreen
   f.WindowLeft = (ps.MaxX - ps.MinX) / 2 - f.Width / 2
   f.WindowTop = (ps.MaxY - ps.MinY) / 2 - f.Height / 2
End Sub

In pratica non permette di valorizzare ps con fx.PrimaryScreen
 

LucaMs

Expert
Licensed User
Longtime User
Ho dato un'occhiata e ho capito anche il senso.
L'unico problema è dato dalla seconda riga di questa funzione, non riconosce fx!
B4X:
Sub CenterForm(f As Form)
   Dim ps As Screen = fx.PrimaryScreen
   f.WindowLeft = (ps.MaxX - ps.MinX) / 2 - f.Width / 2
   f.WindowTop = (ps.MaxY - ps.MinY) / 2 - f.Height / 2
End Sub

In pratica non permette di valorizzare ps con fx.PrimaryScreen
Private fx as JFX

in Class_Globals (o Process_Globals, se è un modulo di codice, cosa probabile).

Se ti serve il progetto - le pagine - anche per altre piattaforme, mettilo come condizionato:
#If B4J
Private fx as JFX
#End If

(anche tutta quella routine e le chiamate ad essa, ovviamente)
 

Aldo's

Active Member
Licensed User
Private fx as JFX

in Class_Globals.

Se ti serve il progetto - le pagine - anche per altre piattaforme, mettilo come condizionato:
#If B4J
Private fx as JFX
#End If

(anche tutta quella routine e le chiamate ad essa, ovviamente)
Funziona alla grande, grazie
 
Top