Thema Datum  Von Nutzer Rating
Antwort
Rot Access: Textfelder synchronisieren; repaint
16.01.2012 15:25:46 Stefan
NotSolved
22.01.2012 22:59:56 Heiko
NotSolved
23.01.2012 18:07:42 Stefan
NotSolved

Ansicht des Beitrags:
Von:
Stefan
Datum:
16.01.2012 15:25:46
Views:
2105
Rating: Antwort:
  Ja
Thema:
Access: Textfelder synchronisieren; repaint
Hallo in die Runde!

Ich habe das folgende Problem, bei dem ich nicht weiterweiß. In einem Formular in geteilter Ansicht
gibt es ein gebundenes Textfeld "Ende" und ein ungebundenes Textfeld "txtEnde". Die Spalte "ende" in
der Datenbank ist vom Typ "datetime". Da das Ende-Datum nur minutengenau angezeigt werden soll, 
verstecke ich das gebundene Feld "ende" und zeige in "txtEnde" einen gekürzten Datums-String:

Private Sub Form_Current()
    If Not IsNull(Me!Ende) Then Me!txtEnde = Mid(CStr(Me!Ende), 1, 16) Else Me!txtEnde = ""
    Debug.Print "txtEnde: " & txtEnde.Value
End Sub

Problem: txtEnde zeigt beim Blättern durch die Datensätze einen falschen Wert an, nämlich jeweils den
aus  der vorherigen Zeile. Die Ausgabe vom debug.print zeigt hingegen den richtigen Wert! Wenn ich 
das Formular minimiere und wiederherstelle, zeigt plötzlich auch das Formular den richtigen Wert. 

Der folgende Code funktioniert also (notdürftig):
Private Sub Form_Current()
    If Not IsNull(Me!Ende) Then Me!txtEnde = Mid(CStr(Me!Ende), 1, 16) Else Me!txtEnde = ""
'    Me.Repaint
    ' repaint aktualisiert txtEnde nicht;
    ' workaround:
    DoCmd.SelectObject acForm, "dafe"
    DoCmd.Minimize
    DoCmd.SelectObject acForm, "dafe"
    DoCmd.restore
End Sub

Müßte nicht eigentlich "Repaint" das tun, was ich möchte? 
Kann ich das Problem anders lösen, ohne Minimize/restore, denn das verursacht häßliches Flackern?

Viele Grüße

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Access: Textfelder synchronisieren; repaint
16.01.2012 15:25:46 Stefan
NotSolved
22.01.2012 22:59:56 Heiko
NotSolved
23.01.2012 18:07:42 Stefan
NotSolved