Seite 2 von 4

Re: re:

Verfasst: 10.10.2008 21:27
von Fluid Byte
smateja hat geschrieben:Anzeige von vielen terminen + Zimmern zeigte in der Praxis ein tolles grafisches Laag - deshalb der griff zum screen
Was genau hast du getestet? Womit hast du getestet und wie? Außerdem was heißt "viele Termine"? Über was für Größeneinheiten reden wir hier? Ein ListView- sowie ListIconGadget sind probemlos in der Lage tausende von Einträgen schnell hinzufügen und anzuzeigen.
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
Was haben Würtschen und Autos damit zu tun? Das ist etwas völlig subjektives und hat nichts mit effizienter Programmierung zu tun. Sicher, im Endeffekt ist es mir scheißegal wie du es zusammenzimmerst aber es ist und bleibt eine "zweifelhafte" Lösung.
Ich hab vergessen zu sagen, dass ich es dann grafisch hübscher mit tollen effekten machen kann
Das ist nicht dein Ernst oder? Bild

Darf man fragen was genau du dir unter "tollen Effekten" vorstellst?

re:

Verfasst: 10.10.2008 22:23
von smateja
Also damit man sich mal vorstellen kann was ich überhaupt meine:

Bild

Klar kann man das auch ohne Screen etc machen - nur beim scrollen des Planes entsteht dann meist ein verzögerter aufbau der einzelnen Elementen daher meine Idee zum Griff auf ein Screen.

Naja - wenn mir einer was Besseres vorschlägt nehme ich diese Idee gerne an.

Glaub nur, dass hier ein Screen einfach performanter ist.

Verfasst: 10.10.2008 22:33
von Kaeru Gaman
nuja... also ich sag mal...
wenn du sowieso eine ScrollArea benutzt, dann könntest du in diese auch ne menge ImageGadgets einsetzen.
ich würde schätzen, dann hast du nicht einen so stark verzögerten aufbau...
zusätzlich hättest du dann ja die Möglichkeit, die clicks direkt abzufangen anstatt ne riesenlatte koordinaten auswerten zu müssen.
und mit Images kann man auch schmucke Grafix machen.

wäre halt der "normale" Weg, so eine Anwendung zu bauen, einen Screen würde man da normalerweise nicht unbedingt verwenden.

Verfasst: 11.10.2008 03:32
von edel
Kaeru Gaman hat geschrieben:nuja... also ich sag mal...
wenn du sowieso eine ScrollArea benutzt, dann könntest du in diese auch ne menge ImageGadgets einsetzen.
ich würde schätzen, dann hast du nicht einen so stark verzögerten aufbau...
zusätzlich hättest du dann ja die Möglichkeit, die clicks direkt abzufangen anstatt ne riesenlatte koordinaten auswerten zu müssen.
und mit Images kann man auch schmucke Grafix machen.

wäre halt der "normale" Weg, so eine Anwendung zu bauen, einen Screen würde man da normalerweise nicht unbedingt verwenden.
Genau dann wird es langsam und ein "Screen" hat da rein gar
nichts zu suchen. Der beste Weg, ist es wohl selber zu zeichnen.

Verfasst: 11.10.2008 15:49
von Kaeru Gaman
edel hat geschrieben:Der beste Weg, ist es wohl selber zu zeichnen.
erklär doch mal, wie man sowas macht und ein paar mehr hintergrundinfos.

Verfasst: 11.10.2008 16:25
von Fluid Byte
smateja hat geschrieben:Klar kann man das auch ohne Screen etc machen - nur beim scrollen des Planes entsteht dann meist ein verzögerter aufbau der einzelnen Elementen daher meine Idee zum Griff auf ein Screen.
Wie jetzt? Es existiert bereits software?

re:

Verfasst: 11.10.2008 19:51
von smateja
Nein - es besteht sogesehen kein Fertiges Produkt etc. - Ich mag einfach eine kleine Hotelsoftware zum verwalten von Terminen Proggen. Der Screenshot ist von ich glaub dem Produkt Protel.

Bei mir hier gibts im moment nicht mehr als ein paar gebastelte grafische Buttons eine paar Fenster eine Gesmatstruktur des Projekts und ein ziemlich schlechten Anfang einer Umsetzung des Zimmerplans + Dutzende Fertiggebaute MySql abfragen ohne odbc - Sowie n haufen Fertiggebastelte Fenster wie ne art Karteikarte etc.

Für mich heißt erstmal ncoh das Problem Zimmerplan in den Griff bekommen und danach die Puzzel zusammenfügen.

Verfasst: 12.10.2008 23:41
von K.Putt
Hallo,
Du könntest eventuell auch das Webgadget nutzen und eine HTML Seite basteln, die wird rasend schnell angezeigt (bis zu einer gewissen Größe) sobald das Webgadget geladen ist und der Interpeter damit bereit steht.

Ich hatte mal einen Table mit etwa...Moment... 25.000 Zellen und das lies sich noch darstellen. Ich denke nicht, dass Du so viele benötigst.

Was die Struktur angeht kannst Du da sehr einfach mit HTML und CSS operieren, Hintergrundgrafiken einbinden, eigene Buttons gestalten,
schnell und einfach alle Elemente per CSS abändern...
Das Problem mit dem Scrollen hätte sich dann auch erledigt, mit Ankern kommst Du dann sogar einfach und direkt zu jeder Zeile.

Für umfangreichere Bedienelemente würde ich mittlerweile nur noch das Webgadget benutzen, HTML ist für so etwas einfach wie gemacht.

RE:

Verfasst: 13.10.2008 10:27
von smateja
An die Lösung via HTML + CSS + AJAX dachte ich auch. Werde ich mal ausprobieren, denke aber, dass dies eine bessere lösung ist als viaScreen oder sonst wie.

Merci derweil.

Scrollbar auf Scren

Verfasst: 13.10.2008 14:55
von kswb73
Du könntest auch die Scrollbar selber auf den Screen malen. So könntest du selber die Scrollbar gestalten und an deinen Style anpassen. Auch das verzögerte Scrollen des Bilschirmes wäre damit gelöst.
Hier mal ein Beispiel wie das gehen/ausehen könnte:

Code: Alles auswählen

InitSprite()

OpenWindow(1,0,0,520,520,"Test",#PB_Window_ScreenCentered|#PB_Window_MinimizeGadget)

OpenWindowedScreen(WindowID(1),0,0,520,520,0,0,0)


ScreenBigX=1000
ScreenBigY=1000
viewX.d=0
viewY.d=0
Repeat
  Repeat
  Wevent=WindowEvent()
    Select WEvent
      Case #PB_Event_CloseWindow
      End
    EndSelect  
  Until WEvent=0
  
  If IsScreenActive()
  ClearScreen(RGB(0,128,0))
  LMouseX=MouseX
  LMouseY=MouseY
    If Not WindowMouseX(1)=-1
    MouseX=WindowMouseX(1)
    MouseY=WindowMouseY(1)
    EndIf
  MouseMoveX=MouseX-LMouseX
  MouseMoveY=MouseY-LMouseY
    If GetAsyncKeyState_(#VK_LBUTTON)
    MouseL+1
    Else
    MouseL=0
    Menu=0
    EndIf
  
    If MouseL=1
      If MouseX>500 And MouseX<520 And MouseY>viewY*400/(ScreenBigY-500) And MouseY<viewY*400/(ScreenBigY-500)+100
      Menu=1
      ElseIf MouseY>500 And MouseY<520 And MouseX>viewX*400/(ScreenBigX-500) And MouseX<viewX*400/(ScreenBigX-500)+100
      Menu=2
      EndIf
    EndIf
    
    If Menu=1 And GetAsyncKeyState_(#VK_LBUTTON)
    viewY+MouseMoveY*(ScreenBigY-500)/400
      If viewY<0
      viewY=0
      ElseIf viewY>ScreenBigY-500
      viewY=ScreenBigY-500
      EndIf
    ElseIf Menu=2
    viewX+MouseMoveX*(ScreenBigX-500)/400
      If viewX<0
      viewX=0
      ElseIf viewX>ScreenBigX-500
      viewX=ScreenBigX-500
      EndIf
    EndIf
  
  StartDrawing(ScreenOutput())
  DrawText(10,10,Str(MouseX)+"|"+Str(mouseY))
  DrawText(10,30,Str(viewX)+"|"+Str(viewY))
  
  Circle(500-viewX,500-viewY,20,RGB(0,0,255))
  
  
  Box(500,0,20,500,RGB(200,200,200))
  Box(500,viewY*400/(ScreenBigX-500),20,100,RGB(100,100,100))
  
  Box(0,500,500,20,RGB(200,200,200))
  Box(viewX*400/(ScreenBigX-500),500,100,20,RGB(100,100,100))
  Box(500,500,20,20,RGB(150,150,150))
  StopDrawing()
  EndIf
FlipBuffers()
Delay(30)
ForEver
/Edit Delay eingefügt.