Seite 1 von 1

Bild wird nicht angezeigt

Verfasst: 25.01.2011 22:09
von JustForFun
Hallo,

heute ist mein erster Tag hier in diesem Forum und schon habe ich ein Problem ^^
ich habe aus ein paar Tutorials einen Code zusammenkopiert und das klappt auch soweit das sich ein Fenster öffnet, welches ich schließen kann und alles.
Allerdings möchte ich in dem Fenster erstmal ein Bild anzeigen lassen. Würde mich freuen wenn ihre mir sagen würdet was ich falsch mache.

Hier mal den Code:

Code: Alles auswählen

If OpenWindow(0,600,600,800,800,"Test Game",#PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget) = 0


EndIf


  Repeat                                             ; In dieser Schleife werden die Aktionen durchgefuehrt.
    EventID.l = WaitWindowEvent()                    ; Die Variable EventID wird der Funktion WaitWindowEvent (WarteAufAktion) zugewiesen.

    If EventID = #PB_Event_CloseWindow                ; Wenn der Benutzer die Aktion schliessen drueckt,
      Quit = 1                                       ; wird die Quit Variable aktiviert.
    EndIf                                            ; Ende der Abfrage 

  Until Quit = 1                                     ; Wenn die Quit Variable aktiviert ist, schliesse das Programm.

  

  LoadImage(0,"Landschaft 1.bmp") ; Bild laden (Pfad bitte anpassen)

x_image= ImageWidth(0) ; Image Breite 
y_image=ImageHeight(0) ; Image Höhe
__________________________________________________
Code-Tags hinzugefügt
25.01.2011
RSBasic

Re: Bild wird nicht angezeigt

Verfasst: 25.01.2011 22:12
von RSBasic
Versuchs mit diesem Code:

Code: Alles auswählen

EnableExplicit

Define EventID

LoadImage(1,"Landschaft 1.bmp")

If OpenWindow(0,0,0,500,400,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_SizeGadget)
  ImageGadget(1,10,10,0,0,ImageID(1),0)
  
  Repeat
    EventID=WaitWindowEvent()
    If EventID = #PB_Event_CloseWindow
      End
    EndIf
  ForEver
EndIf

Re: Bild wird nicht angezeigt

Verfasst: 25.01.2011 22:48
von JustForFun
vielen Dank,
hat alles soweit geklappt.
Hab jetzt nur noch das Problem das ich nicht weiß wie ich das Bild skaliere sodass es in einer Auflösung von 800x600 in dem Fenster angezeigt wird obwohl es eigentlich eine höhere Auflösung hat.
Am besten wäre es aber wenn sich das Bild automatisch an die Breite und Höhe des Fensters anpassen würde. Weiß halt nicht ob das so geht. Hab auch nicht die Zeit mich darin einzuarbeiten weil ich in ein Woche für nen Monat nach Italien muss.

Re: Bild wird nicht angezeigt

Verfasst: 25.01.2011 22:54
von RSBasic
Hallo JustForFun,


erstmal nachträglich ein "Herzlich Willkommen im Forum". :allright: (Hab nicht gesehen, dass du neu bist)

Dein Bild kannst du mit dem Befehl "ResizeImage()" verkleinern oder vergrößern.
Um die Größe deines Fensters ermitteln zu können, benutze folgende Befehle:
-WindowWidth()
-WindowHeight()

Informationen zu den Parametern der Befehle findest du in der PB-Hilfe.

Falls du dennoch nicht weiterkommst, sage Bescheid :allright:

Re: Bild wird nicht angezeigt

Verfasst: 25.01.2011 22:54
von c4s
JustForFun hat geschrieben:Hab auch nicht die Zeit mich darin einzuarbeiten weil ich in ein Woche für nen Monat nach Italien muss.
Das Einarbeiten und Erlernen einer Sprache gehört nunmal zum Programmieren dazu, nicht war? Wie stellst du dir das dann also vor?

Tipp: Hilfedatei -> ResizeImage()

Re: Bild wird nicht angezeigt

Verfasst: 25.01.2011 22:59
von STARGÅTE
ab auch nicht die Zeit mich darin einzuarbeiten
Wenn du dann aber darauf baust, dass "wir" dir alle Code vor die Nase legen, dann wirst du PureBasic nie lernen.
Klingt hart, ist aber nun mal so.

Programmieren benötigt nun mal Einarbeitungszeit.

Re: Bild wird nicht angezeigt

Verfasst: 26.01.2011 20:53
von JustForFun
Sorry, habe mich falsch ausgedrückt.
In Italien werde ich kein Internet haben und wollte die Zeit trotzdem nutzen um mich in PureBasic einzuarbeiten.
Deshalb habe ich mir Tutorials auf meinen Laptop gezogen und da stieß ich auf ein paar Sachen die ich so nicht lösen konnte.
Diese Teile wollte ich hier halt klären bevor ich dann in Italien bin.