Announcement

Collapse
No announcement yet.

Wie sieht hier ein Objektverweis aus?

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

  • Wie sieht hier ein Objektverweis aus?

    Hallo zusammen,

    [highlight=vb.net] Form_für_Infos.Visible = True
    Form_für_Infos.Location = New Point(Me.Width / 2 - (Form_für_Infos.Width / 2), 80)[/highlight]


    bei diesen beiden Befehlen in einem Privat Sub scheint das "Form_für_Infos.Width" nicht i.O. zu sein, denn gebe ich das bei Überwachen ein, dann kommt die Meldung:

    "Der Verweis auf einen nicht freigegebenen Member erfordert einen Objektverweis"

    Die Befehle stehen selber in enem Button von Form "Me"

    Der Programmteil selber wird aber ohne Fehlermeldung durchlaufen!!

    Wie muss denn der Verweis aussehen?

    vG

    fredyx

  • #2
    Hi,

    Die Befehle stehen selber in enem Button von Form "Me"
    warum lässt du dann diesen Code-Teil weg?
    Was soll aus deinen Zeilen gelesen werden?

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

    Comment


    • #3
      Hallo Gü,

      mir geht es nur um die Positionierung der Form "Form_für_Infos", über die VB aber vor dem Ende des Sub's noch keine Info zu ihrer Breite hat und sie deshalb auch noch nicht kennt.

      Ich möchte erreichen, dass die Form "Form_für_Infos" mit ihrer Mitte genau auf der Mitte von der Form liegt aus der heraus ich "Form_für_Infos" öffne.

      das vollständige Sub lautet:

      [Highlight=vb.net]
      Private Sub INFOToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles INFOToolStripMenuItem.Click

      'Hier wird der Text aus der Datei "Hilfe_INFO.txt" im Debug-Ordner angezeigt

      Form_für_Infos.Visible = True
      Form_für_Infos.Location = New Point(Me.Width / 2 - (Form_für_Infos.Width / 2), 80)

      Form_für_Infos.Label2.Location = New Point(10, 10)
      Form_für_Infos.Label2.Visible = True

      Form_für_Infos.Label2.Text = My.Computer.FileSystem.ReadAllText("Hilfe_INFO.txt ")


      End Sub[/Highlight]

      vG

      fredyx
      Zuletzt editiert von fredyx; 23.10.2008, 14:28.

      Comment


      • #4
        Hi,

        Beispiel:

        Form1:
        [highlight=vbnet]
        Private Sub button1_Click(sender As Object, e As EventArgs)
        Dim frm2 As New Form2()
        frm2.Owner = Me
        frm2.Show()
        End Sub
        [/highlight]
        Der Form2 wird mit Owner ein Verweis auf Form1 mit gegeben um auf die Eigenschaften von Form1 zugreifen zu können.

        Form2:
        [highlight=vbnet]
        Private Sub Form2_Load(sender As Object, e As EventArgs)
        Dim parentLocation As Point = Me.Owner.Location
        Dim parentSize As Size = Me.Owner.Size
        Dim thisSize As Size = Me.Size

        Dim x As Integer = parentLocation.X + (parentSize.Width - thisSize.Width) / 2
        Dim y As Integer = parentLocation.Y + (parentSize.Height - thisSize.Height) / 2

        Me.Location = New Point(x, y)
        End Sub
        [/highlight]

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

        Comment


        • #5
          Hallo Gü,
          danke für Deine Mühe, aber es war doch fast alles so richtig, wie ich es hatte.

          Das "fast" bezieht sich darauf, dass ich zuerst dem Label die Datei zuordnen musste, die darin angezeigt werden soll, da dann VB erst die Größe des Labels und der Form kennt, denn Autosize der Form steht bei mir bewusst auf True.
          Dann kann ich auch von VB nicht verlangen schon vorher zu wissen, welche Datei denn in die Form bzw. das Label rein soll.

          vG

          fredyx

          Comment

          Working...
          X