Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Andere Farben

Begonnen von Rainer 1984, Februar 12, 2011, 14:37:08

⏪ vorheriges - nächstes ⏩

Rainer 1984

Hi Accessfans,

folgendes funktioniert gut:
Wenn die Checkbox "Aktivität" angeklickt ist, sind der Schriftzug vom Bezeichnungsfeld "Deaktivierung Begründung" und das nebendran liegende Textfeld "Deaktivierung_Begründung" standardmäßig hellgrau gefärbt und ich kann, wie gewünscht, in das Textfeld keine Werte eingeben.

Dazu habe ich an folgenden Stellen folgenden Code eingegeben
- Eigenschaftenblatt, Formular, Ereignis, Beim Anzeigen
- Eigenschaftenblatt, Aktivität, Ereignis, Nach Aktualisierung
If Me!Aktivität = True Then
  Me!Deaktivierung_Begründung.Enabled = False
Else
  Me!Deaktivierung_Begründung.Enabled = True
End If


Doch hier das Problem:
Statt der standardmäßig eingestellten hellgrauen Farbe hätte ich gerne eine andere Farbe (dunkleres Grau).
Habe versucht, folgenden Code mit den gewünschten Farben (Feld und Schrift) in o.g. Code einzubauen.
Me!Deaktivierung_Begründung.BackColor = RGB(216, 216, 216)
Me!Deaktivierung_Begründung.ForeColor = RGB(165, 165, 165)

Das Ergebnis ist jedoch immer das gleiche - die Farben zeigen sich nur im deaktivierten Zustand der Checkbox (also wenn sie NICHT angeklickt ist).

Viele Grüße

Rainer

oma

Hallo,

wie lautet denn nun dein gesamter Code bei welchem Ereignis?

Gruß Oma
nichts ist fertig!

Rainer 1984

Hallo Oma,

unter folgendem Ereignis steht folgender Code:
- Eigenschaftenblatt, Formular, Ereignis, Beim Anzeigen:
Private Sub Form_Current()
     If Me!Aktivität = True Then
        Me!Deaktivierung_Begründung.Enabled = False
      Else
        Me!Deaktivierung_Begründung.Enabled = True
    End If
End Sub


Genauso steht unter folgendem Ereignis folgender Code (ist im Kern der gleiche, wie oben):
- Eigenschaftenblatt, Aktivität, Ereignis, Nach Aktualisierung
Private Sub Aktivität_AfterUpdate()
     If Me!Aktivität = True Then
        Me!Deaktivierung_Begründung.Enabled = False
      Else
        Me!Deaktivierung_Begründung.Enabled = True
    End If
End Sub


Habe versucht, folgende Code-Bausteine an verschiedenen Stellen des oberen Codes einzubauen:
Me!Deaktivierung_Begründung.BackColor = RGB(216, 216, 216)
Me!Deaktivierung_Begründung.ForeColor = RGB(165, 165, 165)


Viele Grüße

Rainer

oma

Hallo Rainer,

ich denke, so wie du es dir vorstellst wird es nicht gehen

Beim Einstellen von Enabled=False wird bei einem Textfeld immer von Access die Text- u. Hintergrundfarbe automatisch grau eingestellt u. kann nicht verändert werden!

Für ein Bezeichnungsfeld wird die Textfarbe ebenfalls auf unverändertes grau gestellt, die Hintergrundfarbe kann aber mit BackColor eingestellt werden.

Gruß Oma
nichts ist fertig!

Rainer 1984

Hallo Oma,

das ist aber schade.  :o
Lässt sich das irgendwie über bedingte Formatierung verwirklichen?

Vielen Dank und viele Grüße

Rainer

bahasu

#5
Moin,

das Textfeld kannst Du einstellen mit

       Dim oFmtC As FormatCondition

       Me.[DeinFeld].FormatConditions.Delete
       Set oFmtC = Me![DeinFeld].FormatConditions.Add(acExpression, , [DeinFeld].Enabled = False)  'Bedingung
       Me![DeinFeld].FormatConditions(0).BackColor = 255 ' rot


siehe auch: http://www.access-o-mania.de/forum/index.php?topic=13794

Harald
Servus

oma

Hallo Harald,

Es soll für ein Textfeld Enabled=False gesetzt werden u. dann soll ForeColor bzw. BackColor für das Feld nicht grau sondern eine andere Farbe eingesetzt werden.

Hast du das mal mit dem Vorschlag mit FormatCondition geprüft?

Gruß Oma
nichts ist fertig!

bahasu

#7
Hallo,

im Anhang wird das Ändern der Hintergrundfarbe und das Sperren (ok locked und nicht enabled) eines Steuerelementes durch eine Kombifeld gesteuert. Funktioniert auch in der Datenblatt-Anzeige.

Ich hoffe, ich hatte nichts falsch verstanden.

Harald

[Anhang gelöscht durch Administrator]
Servus

Rainer 1984

Hallo Harald,

erstmal Danke!  :)
Komme momentan noch nicht dazu mir das anzuschauen, werde mich aber demnächst auf jeden Fall melden.

Viele Grüße

Rainer

oma

Hallo Harald,

Zitatok locked und nicht enabled

genau deshalb hatte ich nachgefragt, ein enabled wird nicht gehen mit der bedingten Formatierung !?

Gruß Oma
nichts ist fertig!

Rainer 1984

Hallo Harald,

so, bin wieder da.  ;)
Habe Deinen Code aus Antwort #5 mal versuchsweise eingegeben.
Resultat: Egal, ob Checkbox aktiv ist oder nicht, das nebenstehende Textfeld ist leider immer "rot".

Viele Grüße

Rainer

bahasu

Moin Rainer,

wenn ich bei dem zuvor hinterlegten Beispiel im Formular im Kombifeld ein "Nein" eintrage wird das Feld Anwendung grün, bei einem "Ja"-Eintrag wird es rot.
Wie schon an anderer Stelle erwähnt (siehe oma's Beitrag), kann access ein enabled=false-Feld nicht mit anderer Farbe darstellen.

Anbei ein Beispiel, wie man das aber über einen Umweg simulieren kann. Deshalb taucht in den beiden folgenden Sätzen das Wort "scheinbar" auf.

1. Im Formular "Hintergrund mit Steuerelement steuern" kannst Du mit dem Feld "erlaubt" steuern, ob ein Zugriff auf die anderen Felder möglich ist oder nicht. Wenn nein, sind diese grau unterlegt und (scheinbar) nicht anklickbar.

2. Im Formular "Hintergrund mit locked steuern" sind einige Felder als Locked=true eingestuft. Diese sind grau hinterlegt und (scheinbar) nicht anklickbar.

Harald

[Anhang gelöscht durch Administrator]
Servus

oma

Hallo,

@Harald:

ZitatWie schon an anderer Stelle erwähnt (siehe oma's Beitrag), kann access ein enabled=false-Feld nicht mit anderer Farbe darstellen.

ich hatte das probiert, u. ich konnte immer die Hintergrundfarbe mit FormatCondition ändern (kein Standardgrau), aber das Feld war eigenartiger Weise aktivierbar, obwohl  enabled=false gesetzt war. Keine Ahnung warum das so ist?

Gruß Oma
nichts ist fertig!

Rainer 1984

#13
Hallo Harald,

zuerst danke ich Dir für die angehängten Beispiele.

Bin mir jetzt nicht ganz schlüssig, was ich machen soll. Auf den ersten Blick scheinen Deine Codes etwas kompliziert zu sein - bin erst Anfänger.
Außerdem benutze ich Checkboxen (also mit Häckchen) und keine "Ja" oder "Nein"-Eingaben.

Was ich noch zum Standardgrau von Access sagen wollte: Die Schrift im Bezeichnungsfeld ist bei aktivierter Checkbox irgendwie doppelt vorhanden und dadurch schlecht lesbar. Weiß UND Grau. Und zwar um ca. 1 mm versetzt. Man sieht auch deutlich das abgesägte "g" des grauen Schriftzugs. Bei deaktivierter Checkbox und schwarzer Schrift im Bezeichnungsfeld ist alles okay. Siehe dazu auch die beigefügte JPG-Datei - da sind beide Zustände sichtbar. Könnte das ein Fehler in Access sein?

Viele Grüße

Rainer

[Anhang gelöscht durch Administrator]

bahasu

Hallo Rainer,

vielleicht entspricht das Beispiel im Anhang besser Deinem Vorhaben.
Im VBA-Teil habe ich ein paar Erläuterungen eintragen.

Harald

[Anhang gelöscht durch Administrator]
Servus