German B4A Anfängerfrage Panel.SetBackgroundImage

psciga

Active Member
Licensed User
Longtime User
Hallo zusammen,

wie kann man das Hintergrundbild zu einem Panel anzeigen? Folgender Code funktioniert bei mir nicht, warum?

B4X:
Sub Globals
   'These global variables will be redeclared each time the activity is created.
   'These variables can only be accessed from this module.
   Dim Panel1 As Panel
   Dim Bild As Bitmap 
End Sub

Sub Activity_Create(FirstTime As Boolean)
   activity.LoadLayout("hintergrund1")
   Bild.Initialize(File.DirAssets,"mapguide_480_600_massstab500.png")
   Panel1.Initialize("Panel1")
   Panel1.SetBackgroundImage(Bild)
End Sub

Panel1 wurde mit dem Designer erzeugt.

Danke im Voraus - Peter
 

klaus

Expert
Licensed User
Longtime User
Diese Zeile ist zuviel !
Wenn eine View in Designer erstellt wurde darf sie nich noch einmal im Code initilisiert weden !
In Deinem Fall hast Du ein neues Panel, mit dem gleichen Namen wie das Panel in der Layoutdatei, definiert und initilisiert. Du hast dieses neue Panel aber nicht der Activity hinzugefügt. Das heisst dass das Panel von der Layoutdatei nicht mehr erkannt wird und das neue in der Activity noch nicht bekannt ist.

Folgende Zeile ist in beiden Beispielen erforderlich.
Dim Panel1 as Panel

Beispiel, Panel im Designer definiert.
B4X:
Sub Activity_Create(FirstTime As Boolean)
  Activity.LoadLayout("hintergrund1")
  Bild.Initialize(File.DirAssets,"mapguide_480_600_massstab500.png")
  Panel1.SetBackgroundImage(Bild)
End Sub


Beispiel, Panel im Code definiert.
B4X:
Sub Activity_Create(FirstTime As Boolean)
  Activity.LoadLayout("hintergrund1")
  Bild.Initialize(File.DirAssets,"mapguide_480_600_massstab500.png")
  Panel1.Initialize("Panel1")
  Activity.AddView(Panel1, 0, 0, 100%x, 100%y)
  Panel1.SetBackgroundImage(Bild)
End Sub

Beste Grüsse.
 

psciga

Active Member
Licensed User
Longtime User
Hallo Klaus,

vielen Dank für Deine Hilfe. Genau so funktioniert es!

Nun ist es ja nicht leicht, sich für die Mühen der Helfer hier im Forum zu bedanken. So habe ich mir gedacht, dass es vielleicht hilfreich wäre, andere an meiner Begeisterung für B4A teilhaben zu lassen. Da kam gestern diese Anfrage auf AndroidPIT gearde recht, um meine ersten Erfahrungen mal in die Welt raus zu posaunen.

Sonnige Grüße aus dem Sachsenland - Peter
 

klaus

Expert
Licensed User
Longtime User
Top