Neue Form alter Name

  • VB6

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Unknown.

    Neue Form alter Name

    Hallo Forum

    Mit

    Private Sub Command1_Click()
    Dim Notiz As New Form2
    Notiz.Show ' Form nochmals anzeigen
    Notiz.Caption = Notiz.Name ' Titel der Form ändern
    End Sub

    erstelle ich neue Formen. ca 50 Stück

    Um diese Formen zu verwalten müsste jede Form einen eigenen Namen haben.

    Mit Notiz.Namen="Notiz 3" bekomme Fehlermeldung

    Wie kann ich unter der Laufzeit den Namen der Form ändern??
    Danke für eure hilfe
    Eugen
    Hallo Eugen,

    bitte verrate doch mal den Grund warum du zur Laufzeit den Namen ändern möchtest, das ist doch vollkommen unnötig, der Name ist nach außen hin nicht sichtbar und du kannst deine Forms auf andere Art und Weise verwalten.

    Gruß Markus
    Hallo Markus
    Zuerst danke ich Dir für deine rasche Antwort
    Den Namen brauche ich nur Intern.
    Zur zeit läuft es so

    Diese Routine steht in Form1
    Dim x
    Private Sub Command1_Click()
    Dim Form() As New Form2
    ReDim Preserve Form(x)
    Form(x).Caption = "Notiz" & x
    Form(x).Print Form(x).Name
    Form(x).Show
    x = x + 1
    FormparameterSpeichern (Form(x))
    End Sub

    Bei Form_MouseUp auf die einzelne Form2, wird werden Position, Größe und Textinhalt auf die Festplatte in eine Datei geschrieben.(wird gebraucht bei PC-Neustart)
    Die Datei trägt den selben Namen wie die Form (momentan Datei Namen = Form(x).Caption)
    Ist Z.B. Notiz4 erledigt wird die Form und die Datei gelöscht.

    Bis jetzt ist alles in Ordnung aber...
    Möchte ich alle Forms sortieren nach Datum, Nummer oder Priorität fehlt die gelöschte Datei und die Schleife zählt im Ordner nur 49 Dateien. Ob wohl die 50 vorhanden ist.
    Das ergibt eine endlose Anzahl von Schleifen und If Abfragen.
    Weiteres ist für jede Notiz eine Alarmzeit vorgesehen welche über einen Timer von Form1 steuert wird und die betr. Notiz im Vordergrund bringt.
    Besser ist, wenn ich die Formen direkt ansprechen kann ohne erst gross die Dateien zu lesen.

    Z.B. Notiz4.SetFocus
    Oder
    If Notiz4.SetFocus = False Then ... next
    Das ganze ist nur grob Umrissen und ist noch komplexer, aber ich hoffe das du verstehst was ich meine.

    Grüße
    Eugen
    Wenn ich deinen 1. Beitrag richtig verstanden hab,
    ist dein Problem, dass du die Formulare nicht auseinander
    halten kannst, solange sie alle Form2 heißen.
    Ich kann dir nicht sagen, wie man zur Laufzeit den Namen
    eines Formulares ändert, das ist meiner Meinung nach
    nicht möglich, aber warum verwendest du nicht einen
    Array in dem du Verweise auf die Formulare speicherst ?
    Dann könntest du die einzelnen Formulare über den
    Array Index ansprechen.

    Zu deinem 2. Beitrag kann ich nur sagen, dass ich ihn
    nicht wirklich verstanden hab,
    vielleicht könntest du sagen, was du genau wissen
    möchtest.