vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Kopie eines Form erstellen 
Autor: guenni255
Datum: 03.12.19 12:42

Hallo Forum

Ich kämpfe seit geraumer Zeit mit einem Problem bei der automatischen Erstellung von Formkopien.
Ich habe ein Form (frmEinsatz) erstellt das ich für verschiedene Ein-und Ausgaben mit unterschiedlichen Eigenschaften versehe.
Das klappt auch alles wie ich es mir vorstelle.

Aufruf mit:
If Me.txtDatum.Text = "" Then Me.txtDatum.Text = Date
Me.txtDatum.Text = Format(Me.txtDatum.Text, "dd.mm.yyyy")
 
Select Case fDSvorhandenPrüfen(Me.txtDatum.Text)
    Case True
        Me.txtTagesstd.Text = fistStunden(Me.txtDatum.Text)
        For i = 1 To fletzterEinsatz(Me.txtDatum.Text)
            Call fAufrufEinsatzForm(i, "vorhanden")
        Next
    Case False
        Call fAufrufEinsatzForm(1, "neu")
End Select
Formatieren und Darsetellen mit:
'Erstellen der Einsatzformulare
'Übergabewert:Einsatznummer und modus (neu oder vorhanden)
Public Sub fAufrufEinsatzForm(Nr As Integer, modus As String)
If Nr > 3 Then Exit Sub
Dim oForm As New frmEinsatz
 
Select Case modus
    Case "vorhanden"
        With oForm
            .BackColor = vbWhite
            If Nr > 1 Then .Left = ((Nr - 1) Mod 3) * 2445 Else .Left = 0
            .Top = frmTag.Height
            .Height = 3900
            .Width = 2445
            .Einsatz = Nr
            .Caption = "Einsatz " & Nr
            .lblFormModus.BackColor = vbRed
            .lblFormModus.ForeColor = vbYellow
            .lblFormModus.Caption = "vorhandener Datensatz"
            .cmdEnde.Enabled = False
            .cmdweitere.Enabled = False
            .Visible = True
            .txtvon.Text = Format(fEinsatzVon(frmTag.txtDatum.Text, Nr), _
              "hh:mm")
            .txtbis.Text = Format(fEinsatzbis(frmTag.txtDatum.Text, Nr), _
            "hh:mm")
            .txtEinsatzStd.Text = fMinBerechnen(.txtvon.Text, .txtbis.Text) / 60
        End With
        Set EinsatzForm(Nr) = oForm
    Case "neu"
        With oForm
            .BackColor = vbWhite
            .Top = frmTag.Height
            If Nr > 1 Then .Left = ((Nr - 1) Mod 3) * 2445 Else .Left = 0
            .Height = 3900
            .Width = 2445
            .Einsatz = Nr
            .Caption = "Einsatz " & Nr
            .lblFormModus.BackColor = vbBlack
            .lblFormModus.ForeColor = vbWhite
            .lblFormModus.Caption = "Neuer Datensatz"
            If Nr = 3 Then
                .cmdEnde.Enabled = True
                .cmdweitere.Enabled = False
            End If
            .Visible = True
        End With
        Set EinsatzForm(Nr) = oForm
 
End Select
Set oForm = Nothing
End Sub
Mein Problem ist nun das man den Aufbau und die Formatierung jeden einzelnen Form´s auf dem Schirm sieht.
Das ist optisch nicht so toll und dauert teilweise entsprechend lang.

Ich habe schon versucht das über die visible Eigenschaft in frmEinsatz zu unterdrücken. Funzt aber nicht.

Hat jemand einen Tipp warum das so ist und wie es hin bekomme das es nicht mehr auf dem Schirm zu sehen ist?


Vielen Dank im Vorraus
Gruß Günni
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Kopie eines Form erstellen 
Autor: guenni255
Datum: 07.12.19 07:37

Hallo Forum

Also ich habe die Ursache meines Problems gefunden.Doch wer meint damit auch eine Lösung der irrt.
Die Darstellung der Forms beim erstellen entfällt wenn es kein MDIChlid mehr ist. Doch damit entstehen neue Probleme der Formatierung, Positionierung und schließen der Form... müssen separat und einzeln geschlossen werden.
Vielleicht hat ja jemand mit diesen neuen Erkenntnissen einen Tip wie ich es hin bekomme.

Vielen Dank im Voraus
Gruß Günni
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel