Seite 1 von 1

SetWindowColor + Box beißen sich?

Verfasst: 19.08.2008 01:39
von Delle
Hallo,

nachdem mit SetWindowColor ein Hintergrund gesetzt wurde, wird die Box z.B. nicht mehr angezeigt.

Muss ich da jz extra einen Callback oder sowas machen? Einzeln aufgerufen werden die beiden Sachen aber doch auch angezeigt?!

Code: Alles auswählen

Width=200
  Height=150
  If OpenWindow(0, 0, 0, Width, Height, "Boxes", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    If StartDrawing(WindowOutput(0))
    
    SetWindowColor(0,RGB(64,64,64))
    
    Box(6, 5, 212,62,RGB(255,255,255))
      StopDrawing()
    EndIf
    
    
    
    Repeat : Event = WaitWindowEvent() : Until  Event = #PB_Event_CloseWindow
  EndIf
[/code]

Verfasst: 19.08.2008 01:54
von STARGÅTE
Du zeichnest deine Box ja nur am "Anfang", sobalt nun der Fensterinhat zerstört wird (verschieben, minimieren, usw.) ist die Box weg.

Dann solltest du gleich n TextGadget oder so nehmen und deren Hintergundfarbe deinen Bedürfnissen anpassen

Verfasst: 19.08.2008 02:03
von Kaeru Gaman
yo, die box verschwindet wahrscheinlich beim nächsten redraw der eingestellten hintergrundfarbe.

was willst du denn machen?
wenns dir um ein bischen simple grafik geht, drawe auf ein Image und benutz ein rahmenloses imagegadget.
dann hast du kein problem mit dem redraw, im gegenteil, dann arbeitet es für dich.

Verfasst: 19.08.2008 09:15
von RSBasic
>wenns dir um ein bischen simple grafik geht, drawe auf ein Image und benutz ein rahmenloses imagegadget.

Code: Alles auswählen

CreateImage(1,100,100,32)
StartDrawing(ImageOutput(1))
  Box(0,0,100,100,RGB(255,255,255))
StopDrawing()

If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  If CreateGadgetList(WindowID(0))
    ImageGadget(1,50,50,0,0,ImageID(1),0)
  EndIf
  SetWindowColor(0,RGB(64,64,64))
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf