Hintergrund im Fenster

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
kaitec
Beiträge: 120
Registriert: 07.11.2005 00:50
Wohnort: Langenselbold
Kontaktdaten:

Hintergrund im Fenster

Beitrag von kaitec »

Wie bekomm ich einen Hintergrund in ein Fenster das mit OpenWindow() geöffnet wird?

Ich habe eine Bild datei, die ist genau 500/480Pixel groß!
Das Fenster beträgt 500/500Pixel!

Die Bild datei(client-h.bmp) soll die Hintergrund Datei sein!

Leider hab ich schon alles versucht, was ich kenne, es klapt aber nicht...

Wäre für kleine Codes oder Befehle sehr dankebar...

MFG
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Versuch mal, erst ein ImageGadget zu erstellen, und darauf alle anderen Gadgets zu erstellen!

Oder mit Startdrawing() Oder OpwnWindowedScreen()....
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
HeX0R
Beiträge: 3055
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

SetWinBackgroundImage( hWnd, hBitmap )

(Brauchst die PBOSL)
Benutzeravatar
Batze
Beiträge: 1492
Registriert: 03.06.2005 21:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Batze »

Mit Imagegadget gehts nicht.
Nimm SetWinBackgroundImage() wie Hexor es vorgeschlagen hat.
Hier sind meine Codes (aber die Seite geht gerade nicht):
http://www.basicpure.de.vu
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Und, wie siehts mit Startdrawing() aus?
Damit habe ich mal vor dem erstellen von gadgets den ganzen Hintergrund rot gemacht. Dann konnte ich sehen, wie breit und hoch die einzelnen Gadgets waren.
Das kann man auch für den hintergrund benutzen, oder nicht?
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
Batze
Beiträge: 1492
Registriert: 03.06.2005 21:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Batze »

Ja, geht wahrscheinlich, aber braucht mehr Leistung wenn du es per Hand redrawst.
Hier sind meine Codes (aber die Seite geht gerade nicht):
http://www.basicpure.de.vu
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

die darstellung einer .bmp läuft normal nicht über 2D-drawing.

imagegadget, oder die PBOSL-funktion.

die PBOSL-funktion ist aber auch in PB und API programmiert,
also kann man dort auch in den Source gucken, wenn man das lieber mag.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
kaitec
Beiträge: 120
Registriert: 07.11.2005 00:50
Wohnort: Langenselbold
Kontaktdaten:

Hintergrund im Fenster

Beitrag von kaitec »

So, erstmal vielen dank an alle!
Leider weis ich die Parameter von SetWinBackgroundImage() nicht!
Könnt ihr mir noch geben?
Benutzeravatar
Hroudtwolf
Beiträge: 1416
Registriert: 30.10.2004 23:33
Kontaktdaten:

Beitrag von Hroudtwolf »

Versuch dich mal damit.

Code: Alles auswählen

  
  ; Colored Window
  ; 2005 Hroudtwolf
  
  If OpenWindow(0, 0, 0, 500, 500, #PB_Window_SystemMenu | #PB_Window_ScreenCentered, "Gefärbtes Fenster")
  
  
  hBrush.l = CreateSolidBrush_(RGB(130,150,250))
  SetClassLong_(WindowID(0), #GCL_HBRBACKGROUND, hBrush.l)
  InvalidateRect_(WindowID(0), #Null, #True)

  Repeat
    EventID = WaitWindowEvent()

    If EventID = #PB_Event_CloseWindow  
      Quit = 1
    EndIf

  Until Quit = 1
  
EndIf
DeleteObject_(hBrush.l) 
End
Zuletzt geändert von Hroudtwolf am 17.12.2005 19:14, insgesamt 1-mal geändert.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Kaeru Gaman hat geschrieben: die PBOSL-funktion ist aber auch in PB und API programmiert,
also kann man dort auch in den Source gucken, wenn man das lieber mag.
API stimmt :wink: , aber der Rest ist wohl C
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten