Seite 1 von 4

windowed Screen auf einem Gadget

Verfasst: 10.10.2008 12:57
von smateja
Hallo zusammen,

gibt es die Möglichkeit einen windowed screen in ein Gadget zu verpacken welches etwas kleiner ist, sodass ich das ganze scrollen kann - toll wäre es wenn das ganze dann noch auf einem panelgadget plaziert würde.

Jemand hier schon mal was experimentiert oder nen denkansatz für mich !?

Verfasst: 10.10.2008 13:14
von STARGÅTE
so hier:

Code: Alles auswählen

InitSprite()
OpenWindow(0, 0, 0, 800, 600, "Fenster", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
 CreateGadgetList(WindowID(0))
  PanelGadget(1, 10, 10, 780, 580)
   AddGadgetItem(1, 0, "WindowedScreen")
    ScrollAreaGadget(2, 5, 5, 770, 550, 1000, 1000, 100) 
   AddGadgetItem(1, 1, "Leer")

 OpenWindowedScreen(GadgetID(2), 0, 0, 1000, 1000, 0, 0, 0)

Repeat
 
 Repeat
 
  Event = WaitWindowEvent(10)
  Select Event 
   Case #PB_Event_CloseWindow
    End 
  EndSelect
 
 Until Event = 0
  
 FlipBuffers() 
 ClearScreen(RGB(0, 100, 0))
 
ForEver
den WindowedScreen einfach in ein geeignetes Gadget packen und statt WindowID() die GadgetID() nutzen ...

re:

Verfasst: 10.10.2008 13:40
von smateja
lol - ja geil - 1A und genau so

vielmals merci gelle

Re: windowed Screen auf einem Gadget

Verfasst: 10.10.2008 14:56
von kswb73
smateja hat geschrieben:Hallo zusammen,

gibt es die Möglichkeit einen windowed screen in ein Gadget zu verpacken welches etwas kleiner ist, sodass ich das ganze scrollen kann - toll wäre es wenn das ganze dann noch auf einem panelgadget plaziert würde.

Jemand hier schon mal was experimentiert oder nen denkansatz für mich !?
Ich hab mal versucht das Scrollen einzubauen. In ein Panalgadget hab ich's leider nicht geschaft, dafür mit Scrollbars.

Code: Alles auswählen

InitSprite()
OpenWindow(0, 0, 0, 520, 520, "Fenster", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
  ScrollBarGadget(0,500,0,20,500,0,500,100,#PB_ScrollBar_Vertical)
  ScrollBarGadget(1,0,500,500,20,0,500,100)
OpenWindowedScreen(WindowID(0),0,0,500,500,0,0,0)
Repeat
  Repeat
  WEvent=WindowEvent()
    Select WEvent
      Case #PB_Event_CloseWindow
      End
    EndSelect
  Until WEvent=0

viewY=GetGadgetState(0)*500/(500-GetGadgetAttribute(1,#PB_ScrollBar_PageLength))
viewX=GetGadgetState(1)*500/(500-GetGadgetAttribute(1,#PB_ScrollBar_PageLength))

  If IsScreenActive()
  ClearScreen(RGB(0,255,0))
  
  StartDrawing(ScreenOutput())
  Circle(500-viewX,500-viewY,40,RGB(0,0,255))
  DrawText(10,10,Str(viewX)+"|+"+Str(viewY))
  StopDrawing()
  
  EndIf
FlipBuffers()
ForEver

re:

Verfasst: 10.10.2008 16:19
von smateja
mmhm ist ein wenig getrickst, denn du änderst ja quasi dann nicht den viewport sondern du verschiebs sogesehen ja den kreis.

Experementiere auch gerade herum.

Versuch:

Überdimensionalen Screen in einem Scrollbargadged zu Scrollen - bislang leider noch ohne ausreichendem Ergebnis. Mir persönlich würde wie oben schon erwähnt ein vertikales Scrollen reichen.

Merci an alle die sich hier beteiligen möchten.

Verfasst: 10.10.2008 16:33
von Fluid Byte
Bevor hier weiter rumgrickelt wird würde ich gern wissen um was genau es sich handelt. Wird das ein Spiel? Map-Editor? 3D Anwendung?

re:

Verfasst: 10.10.2008 19:53
von smateja
scrollbarer Kalender für meherer Zimmer :)

Zimmerplan für eine kleine Hotelsoftware - pro Zeile ein Zimmer - X - Achse definiert dann quasi die Zeitachse der Termine.

Verfasst: 10.10.2008 20:15
von Fluid Byte
Und was hat dich dann gebissen das du denkst stinknormale Verwaltungssoftware mit einem Screen zu programmieren?

re:

Verfasst: 10.10.2008 20:50
von smateja
Anzeige von vielen terminen + Zimmern zeigte in der Praxis ein tolles grafisches Laag - deshalb der griff zum screen

selbst wenn ich an mein auto n riesen würstchen oben drauf bauen mag - so ist doch wurst warum - fakt ist ich mag es machen oder?! - NARF

Nachtrag:

Verfasst: 10.10.2008 20:52
von smateja
Ich hab vergessen zu sagen, dass ich es dann grafisch hübscher mit tollen effekten machen kann ;) - das sollte Grund genug sein oder?