Announcement

Collapse
No announcement yet.

Location mit Form

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Location mit Form

    Hallo zusammen,

    irgendwie ist heute der Wurm drin, weil sogar eigentlich selbstverständliche Sachen nicht funktionieren:

    Für eine Form habe ich als Eigenschaften angegeben:

    Location 100;300

    Locked False

    Ich habe aber den Eindruck, dass diese Form sich beim Öffnen immer gleich positioniert, auch wenn ich die Werte verändere.

    Wenn ich sie aber während des Programmablaufs verändere, dann verschiebt sich die Form!!

    Was kann da falsch sein??

    vG

    fredyx

  • #2
    Hi,

    ist die Location ev. an eine Eigenschaft gebunden?

    Wenn ja -> dann werden diese Werte verwendet.

    mfG Gü
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      Originally posted by gfoidl View Post
      Hi,

      ist die Location ev. an eine Eigenschaft gebunden?
      was heißt das? Und wo stehen die dann?

      Location ist eine Eigenschaft von Form

      vG

      fredyx
      Zuletzt editiert von fredyx; 16.10.2008, 23:52.

      Comment


      • #4
        Dann ist das sicher nicht der Fall, zufällig passiert das nicht.
        Es ist besser du vergisst das einstweil - vielleicht kommen später darauf zurück.

        Kein Ahnung?!

        mfG Gü
        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

        Comment


        • #5
          Ich löse es jetzt so, dass ich mit dem Visible-Schalten auch die Position der Form vorgebe.
          Dann klappt's.

          Gute Nacht bis demnächst wieder

          fredyx

          Comment


          • #6
            vielleicht startposition?

            Comment


            • #7
              Hallo levu,

              was meinst Du damit??

              vG

              fredyx

              Comment


              • #8
                form.startposition kann "WindowsDefaultPosition" annehmen oder sogar "WindowsDefaultBounds", damit wird das Fenster von Win automatisch bein starten positioniert!!

                Comment


                • #9
                  Hallo levu,

                  leider komme ich damit nicht klar.

                  [Highlight=vb.net]Public Class Form1

                  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
                  FormStartPosition.CenterScreen(Form1)
                  End Sub
                  End Class[/Highlight]

                  Wie muss das denn nun konkret heißen, wenn ich mit dem Klick auf den Butten die Form wieder z.B. auf CenterScreen positionieren will? Mit ME statt Form1 geht das auch nicht.

                  Oder verstehe ich da was total falsch?

                  vG

                  fredyx

                  Comment


                  • #10
                    Hi fredyx,

                    das hast du ein wenig falsch verstanden, was bei der knappen Antwort nicht wunderlich ist. In der Rethorik heißt es: Der Sender ist verantwortlich dass die Nachricht beim Empfänger richtig ankommt.

                    Aber zurück zum Problem:
                    Im Designer (bzw. im Konstruktor der Form) kann die Eigenschaft StartPosition für die Form gesetzt werden. Diese Eigenschaft bestimmt wo ein Form am Bildschirm erscheint.
                    Ist die Eigenschaft auf den Wert Manual gesetzt wird die Form an der Position angezeigt die in der Location-Eigenschaft angegeben ist. Der Ursprung des Koordinatensystems ist die linke obere Ecke des übergeordneten Containers - im Falle der Form ist dies der Bildschirm.

                    mfG Gü
                    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

                    Comment


                    • #11
                      Na prima,

                      wenn man das noch nie benutzt hat, kennt man das ja auch nicht. Davon gibt's bestimmt noch 1000 Sachen.

                      Aber es ist schön, wenn das Fenster wieder macht was ich will!!

                      Danke

                      vG

                      fredyx

                      Comment


                      • #12
                        Es wäre auch super wenn Mircosoft dies automatisch löst wenn eine Location explizit angegeben wird dass dann die Startposition auf Manual gestellt wird. Das ging sogar in Visual Basic (vor .net).

                        Vielleicht sieht das einer von denen.

                        mfG Gü
                        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

                        Comment


                        • #13
                          Hi,

                          ich versuche gerade ein Funktion in ein Form einzubauen, das sie auf Knopfdruck zurückholt.
                          in Deutsch:
                          Form1 macht im Button1:
                          Dim Form2 As New Mask
                          Form2.Show()
                          Form1 bleibt weiter geöffnet.

                          Bei Form2 ist es so das es sich seine letzte Position merkt an der es geschloßen wurde.
                          Jetzt will ich das wenn nochmals auf den Form1.Button1 gedrückt wird das Form nicht nochmal geöffnet wird sondern das bereits offene lediglich zentriert wird.

                          Die Prüfung ob es offen ist hab ich schon, aber der Aufruf von CenterToScreen()
                          geht nicht für ein anderes Form nur für das aktive.

                          kann mir jemand helfen bitte??
                          Ich hab keine Ahnung was ich tue aber ich will es lernen

                          Comment


                          • #14
                            CenterToScreen ist protected und kann nur von sich selbst oder einem Nachfahren aufgerufen werden. Das heißt aber nicht das der Form2 keine Methode verpassen kannst die du von Form1 aufrufst in der sich die Form2 selbst zentriert.

                            Biete keine fremden (alten) Threads für neue Fragen benutzen. Mach ruhig einen neuen Thread auf. An denen brauchen wir hier nicht zu sparen

                            Comment


                            • #15
                              ok, sorry dann mach ich mal nen neuen auf....


                              p.s. deine Idee hab ich auch versucht aber irgendwie....
                              naja dann bis gleich im neuen thread

                              siehe da: Der Neue Thread
                              Zuletzt editiert von Undeathly_Shadow; 10.07.2009, 11:17.
                              Ich hab keine Ahnung was ich tue aber ich will es lernen

                              Comment

                              Working...
                              X