Seite 1 von 2

Probleme mit PureRESIZE [bitte schaut nochmal rein]

Verfasst: 27.06.2007 17:26
von PureBasic4.0
Hi, Leute

ich habe ein kleines Problem mit PureRESIZE.

Hier der Code:

Code: Alles auswählen

Procedure Open_Game()
  If OpenWindow(#Game, 192, 6, 826, 670, "Deutsch-Bingo © 2007 by Anton Wuerfel - Spielen",  #PB_Window_SystemMenu | #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget |  #PB_Window_SizeGadget | #PB_Window_Invisible | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
    If CreateGadgetList(WindowID(#Game))
      TextGadget(#Text_6, 10, 10, 80, 20, "Verbunden mit")
      TextGadget(#Game_ConnectedTo, 110, 10, 690, 20, "", #PB_Text_Center | #PB_Text_Border)
      Frame3DGadget(#Frame3D_4, 10, 470, 800, 120, "Infos")
      ListIconGadget(#Game_Messages, 20, 490, 780, 90, "Clientname", 250)
      AddGadgetColumn(#Game_Messages, 1, "Uhrzeit", 150)
      AddGadgetColumn(#Game_Messages, 2, "Nachricht", 376)
      Frame3DGadget(#Frame3D_5, 10, 50, 800, 410, "Spielbrett")
      TextGadget(#Text_8, 20, 80, 80, 20, "Aktuelles Wort")
      TextGadget(#Game_Word, 110, 80, 690, 20, "", #PB_Text_Center | #PB_Text_Border)
      ButtonGadget(#Game_Exit, 210, 600, 370, 50, "Aus dem Spiel aussteigen")
      SetGadgetFont(#Game_Exit, FontID3)
      Frame3DGadget(#Frame3D_6, 30, 120, 580, 310, "Spielfläche")
      ButtonGadget(#Game_Button1, 40, 150, 170, 70, "")
      ButtonGadget(#Game_Button2, 220, 150, 170, 70, "")
      ButtonGadget(#Game_Button3, 400, 150, 170, 70, "")
      ButtonGadget(#Game_Button4, 40, 240, 170, 70, "")
      ButtonGadget(#Game_Button5, 220, 240, 170, 70, "")
      ButtonGadget(#Game_Button6, 400, 240, 170, 70, "")
      ButtonGadget(#Game_Button7, 40, 330, 170, 70, "")
      ButtonGadget(#Game_Button8, 220, 330, 170, 70, "")
      ButtonGadget(#Game_Button9, 400, 330, 170, 70, "")
      ButtonGadget(#Game_Bingo, 630, 240, 160, 60, "!BINGO!")
      SetGadgetFont(#Game_Bingo, FontID4)
      PureRESIZE_SetGadgetResize(#Text_6,#True,#True,#False,#True)
      PureRESIZE_SetGadgetResize(#Game_ConnectedTo,#False,#False,#True,#False)
      PureRESIZE_SetGadgetResize(#Frame3D_4,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Messages,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Frame3D_5,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Word,#True,#True,#False,#True)
      PureRESIZE_SetGadgetResize(#Game_Exit,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Frame3D_6,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button1,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button2,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button3,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button4,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button5,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button6,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button7,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button8,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Button9,#True,#True,#False,#False)
      PureRESIZE_SetGadgetResize(#Game_Bingo,#True,#True,#False,#False)
    EndIf
  EndIf
EndProcedure
Jedes Mal, wenn ich das Fenster maximiere oder die größe verändere, passiert folgendes:

1. Nicht verschoben

Bild

2. Etwas weiter verschoben

Bild

3. Noch etwas weiter verschoben

Bild

4. Ganz weit verschoben

Bild

Für alle, denen die 800x600 auflösung zu klein ist - das oberste Label #Game_ConnectedTo verschiebt immerzu seine Position, während die 9 Buttons überhaupt nichts machen.

Was mache ich (bzw. PureRESIZE) falsch? Unicode ist NICHT aktiviert.

Re: Probleme mit PureRESIZE

Verfasst: 27.06.2007 17:30
von Kiffi
PureBasic4.0 hat geschrieben:Was mache ich (bzw. PureRESIZE) falsch?
PureRESIZE macht gornix falsch. Du tackerst die Gadgets nur falsch fest.

Verfasst: 27.06.2007 17:31
von PureBasic4.0
OK. Erzähl mal. Ihr habt doch bestimmt mehr Ahnung von PureRESIZE als ich.

Verfasst: 27.06.2007 17:35
von Kiffi
PureBasic4.0 hat geschrieben:OK. Erzähl mal. Ihr habt doch bestimmt mehr Ahnung von PureRESIZE als ich.
Der Lib liegt eine Hilfe-Datei bei, die Du Dir wenigstens mal anschauen
solltest.
PureRESIZE-Hilfe hat geschrieben:PureRESIZE_SetGadgetResize(GadgetNumber.l, Locked_Left.l, Locked_Top.l, Locked_Right.l, Locked_Bottom.l, [ParentGadget.l])

Verfasst: 27.06.2007 18:07
von PureBasic4.0
Ob du es glaubst, oder nicht: ich habe mir die hilfe durchgelesen. Nur war mache ich falsch? Bitte postet nicht den mitgelieferten beispielcode. Ich kenn den.

Verfasst: 27.06.2007 19:34
von PureBasic4.0
Aber diese Zeile:

Code: Alles auswählen

      PureRESIZE_SetGadgetResize(#Game_ConnectedTo,#True,#True,#False,#True)
besagt doch eindeutig, dass sich das Gadget nur nach rechts ausbreiten darf. Aber es dehnt sich auch nach unten und oben aus, wenn man das Fenster verschiebt. Liegt da vielleicht doch ein Fehler in der Lib vor oder muss ich noch irgendwas initialisieren, bevor das alles richtig funktioniert? Habe jetzt auch zum Spaß mal mit UTF-8 ausprobiert - das Ergebnis bleibt dasselbe.

Verfasst: 27.06.2007 20:55
von Kiffi
PureBasic4.0 hat geschrieben:Aber diese Zeile:

Code: Alles auswählen

PureRESIZE_SetGadgetResize(#Game_ConnectedTo,#True,#True,#False,#True)
besagt doch eindeutig, dass sich das Gadget nur nach rechts ausbreiten darf.
das ist korrekt. Und nun schau mal weiter oben, was Du in Deinem Code
stehen hast.
PureBasic4.0 hat geschrieben:Liegt da vielleicht doch ein Fehler in der Lib vor
der Fehler sitzt eindeutig vor Deinem Monitor.

Verfasst: 28.06.2007 13:08
von PureBasic4.0
Kiffi,

ich möchte das Publikum befragen :lol: :lol: :lol:

Jetzt mal ernsthaft: Lass halt die Katze mal aus dem Sack

Verfasst: 28.06.2007 13:12
von Kiffi
PureBasic4.0 hat geschrieben:Lass halt die Katze mal aus dem Sack
Richtig (wie in Deinem vorletzten Posting geschrieben):

Code: Alles auswählen

PureRESIZE_SetGadgetResize(#Game_ConnectedTo,#True,#True,#False,#True)
Falsch (wie in Deinem Urspungsposting geschrieben):

Code: Alles auswählen

PureRESIZE_SetGadgetResize(#Game_ConnectedTo,#False,#False,#True,#False) 
Aufgabe für Dich: Finde die 4 Unterschiede.

Verfasst: 28.06.2007 13:25
von PureBasic4.0
danke, kiffi. hab's jetzt geschnallt.

Allerdings hab ich noch ein Problem mit PureRESIZE. Die 9 Buttons sollen sich an die Größe des übergeordneten Frames anpassen. Habe (denke ich zumindest) schon alle #True und #False kombinationen ausprobiert, aber entweder überlappen sich die Buttons oder verschieben einfach nur ihre Position. Gibt's dafür ne möglickeit, oder muss ich das manuell resizen?