Stackgröße Windows

Startseite Foren Deutsches LiveCode-Forum Stackgröße Windows

Schlagwörter: 

Ansicht von 10 Antwort-Themen
  • Autor
    Beiträge
    • #6256
      pustewind
      Teilnehmer

        Hallo zusammen,

        hab mal wieder eine Frage 🙂

        Ich habe im Stack die Fenstergröße auf 1400 x 800 eingestellt und bei resizable ist der Haken drin.
        Außerdem habe ich das Browser-Widget ebenfals auf 1400 x 800 eingestellt. Das Ganze läuft unter Windows7. Soweit so gut.

        Jetzt meine Frage:

        Wenn der User die Fenstergröße an seinen Bildschirm anpasst bleibt das Browser-Widget auf seiner ursprünglichen Größe – was so nicht gewünscht ist. Wie muss ich es anstellen das sich das Browser-Widget automatisch an die Fenstergröße anpasst ?

        Vielen Dank für Eure Hilfe

      • #6258
        Klaus Major
        Administrator

          Hallo pustewind,

          entschuldige bitte die Verspätung, ich war noch im Bad! 😀

          OK, das ist simpel, Du musst ein “resizestack” Skript hinzufügen.
          Pack das ins Skript der Karte mit dem Browser:

          on resizestack
            set the rect of widget "Dein Browser Widget hier..." to the rect of this cd
          end resizestack

          Es kommen bei “resizestack” noch vier Parameter (neueBreite,neueHöhe,alteBreite,alteHöhe) mit,
          aber die brauchen wir in Deinem Fall hier nicht.

          Da funktioniert übrigens auch bei “Stackgröße Mac/Linux” 😉

          Gruß

          Klaus

        • #6260
          pustewind
          Teilnehmer

            Hallo Klaus,

            vielen Dank für deine schnelle Antwort – das hat schon mal super funktioniert.
            Jetzt müsste ich aber den TOP-Wert (ober Abstand zum Fenster) auf einen festen Wert setzen (60).
            ist das möglich?

            Gruß

            pustewind

          • #6262
            Klaus Major
            Administrator

              Ja, das ist möglich.

            • #6264
              Klaus Major
              Administrator

                Kleiner Scherz, aber es ist wichtig, daß Du alles genau verstehst und nicht einfach “abschreibst”.

                Was definiert “the rect of this cd”?
                Das sind vier Koordinaten x1, y1, x2, y2 in einem XY Koordinatensystem, wobei x1 und y1 die obere linke Ecke definieren, und dementsprechend x2 und y2 die untere rechte Ecke definieren.

                Bei einer Karte (= Stack) ist das immer 0,0, Breite der Karte, Höhe der Karte.

                Also wo müsstest du nun ansetzen, um beim Browser OBEN einen Abstand von 60 Pixel zum oberen Fensterrand zu erzeugen?

                Um bei Deinem Beispiel zu bleiben, was müsste das Rect des Browser sein, wenn die Karte 0,0,1400,800 hat?

              • #6266
                Klaus Major
                Administrator

                  Ein weiterer Hinweis:
                  xy = links
                  y1 = oben
                  x2 = rechts
                  y2 = unten

                  Ich weiß, Du hasst mich dafür! 😀

                • #6268
                  pustewind
                  Teilnehmer

                    Hallo Klaus,

                    alles gut – sehe ich genau so 🙂

                    ich würde sagen 0,60,1400,800

                    bin auch schon am testen aber es will nicht…

                    on resizestack
                    set the rect of widget “browser1” to the rect of this (0,60,1400,800)
                    end resizestack

                  • #6270
                    Klaus Major
                    Administrator

                      the rect of this(0,60,1400,800)
                      Echt jetzt? Du musst zugeben, daß Dir das selber komisch vorkommt. 🙂

                      Das geht natürlich nicht so, wir müssen das vorhandene RECT zuerst bearbeiten und dann für den Browser setzen. Hinweis:

                      put the rect of this cd into tRect
                      add 60 to item X of tRect
                      set the rect of widget “…” to tRect

                      Was ist X hier?

                      Es gibt hier mehrere Möglichkeiten, das gewünschte RECT zusammen zu basteln.
                      Du weisst ja nun schon wie LINKS und OBEN definiert werden muss und ich habe Dir erzählt, was ein RECT definiert.

                      Du schaffst das schon 🙂

                    • #6272
                      pustewind
                      Teilnehmer

                        Danke Klaus :-;

                        on resizestack
                        set the rect of widget “browser1” to the rect of this cd
                        put the rect of this cd into tRect add 60 to item 2 of tRect
                        set the rect of widget “browser1” to tRect
                        end resizestack

                        Gruß

                        pustewind

                      • #6274
                        Klaus Major
                        Administrator

                          Naja, fast 🙂

                          on resizestack
                            ## Unnötig, der User könnte sogar ein kurzes Aufblitzen sehen!
                            ## set the rect of widget "browser1" to the rect of this cd
                            put the rect of this cd into tRect 
                            ## Das muss natürlich in eine neue Zeile
                            add 60 to item 2 of tRect
                            ## Jetzt das Rect setzen
                            set the rect of widget "browser1" to tRect
                          end resizestack

                          Eine weitere Möglichkeit, die die mitgelieferten Parameter nutzt:

                          on resizestack neueB,neueH,alteB,alteH
                            put "0,60," & neueB & "," & neueH into tRect
                            set the rect of widget "browser1" to tRect
                          end resizestack

                          Capisce?

                        • #6276
                          pustewind
                          Teilnehmer

                            Hallo Klaus,

                            ja so ist es perfekt 🙂 – vielen Dank!

                            Variante 1 gefällt mir irgendwie besser – finde ich übersichtlicher.

                            Gruß

                            pustewind

                        Ansicht von 10 Antwort-Themen
                        • Du musst angemeldet sein, um auf dieses Thema antworten zu können.