Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Xoar am Februar 04, 2020, 14:52:47

Titel: Formular gegen Eingaben/Bearbeitungen sperren und freigeben
Beitrag von: Xoar am Februar 04, 2020, 14:52:47
Hallo,

habe ein kleines Problem, ich habe mir ein ToggleButton in mein Hauptformular gebaut. Dieser soll das Formular sperren und entsperren.

Sperren klappt.
Entsperren aber nicht, da dass Formular ja gesperrt ist.

Habe im Klick Ereignis des ToggleButton eine einfache if Abfrage. Wenn

If tglBtn = true then
  me.allowEdits = false
  Me.allowAdditions = false usw.
Else
  Me.allowEdits= true
  Usw.
End if


Er kann den ToggleButton im gesperrten Zustand ja nicht im Status verändern, deshalb klappt das nicht.

Habt ihr ne Idee wie man das lösen kann?

Habe aus kosmetischen Gründen keine Kopf-/Fußzeile zur Verfügung, falls das relevant ist.

Grüße
Titel: Re: Formular gegen Eingaben/Bearbeitungen sperren und freigeben
Beitrag von: DF6GL am Februar 04, 2020, 16:47:44
Hallo,

Du könntest die Form-Eigenschaft "RecodsetType"  auf 0,bzw. 2 setzen

oder "bei FokusErhalt" der Buttons Allowedit auf true und "Bei Fokusverlust" auf false setzen.

Titel: Re: Formular gegen Eingaben/Bearbeitungen sperren und freigeben
Beitrag von: Xoar am Februar 04, 2020, 19:33:56
Ich probiere es mal aus.

Titel: Re: Formular gegen Eingaben/Bearbeitungen sperren und freigeben
Beitrag von: Xoar am Februar 05, 2020, 15:42:29
Hallo,

habe es nun so gelöst, dass ich alle Steuerelemente mit einem Tag versehen habe und dann beim Öffnen der Datenbank, oder beim Drücken des Buttons diese Schleife durchlaufen lasse. Nebenbei eine TempVars Variable (boolean), die sich pro Buttonklick ändert und als Wert (sperren, freigeben) der Schleife mitgegeben wird.

Dim ctl As Control

    For Each ctl In Form_frmStammdaten.Controls
        If ctl.Tag = "TagSperrung" Then
            ctl.Locked = Not Wert
            ctl.Enabled = Wert
        End If
    Next ctl
    If Wert = False Then
        Form_frmStammdaten.btnEntsperren.Caption = "gesperrt"
        Form_frmStammdaten.btnEntsperren.BackColor = RGB(255, 0, 0)
        Form_frmStammdaten.btnEntsperren.ForeColor = RGB(255, 255, 255)
    Else
        Form_frmStammdaten.btnEntsperren.Caption = "bearbeitbar"
        Form_frmStammdaten.btnEntsperren.BackColor = RGB(0, 210, 0)
        Form_frmStammdaten.btnEntsperren.ForeColor = RGB(0, 0, 0)
    End If
End Sub


Klappt super.