Opmaak van Ja/nee veld bij focus

Status
Niet open voor verdere reacties.

astra

Gebruiker
Lid geworden
28 jul 2003
Berichten
127
Hallo,

Omdat ik het praktisch vind de velden een andere kleur te geven Bij focus (via Voorwaardelijke opmaak) zou ik dit ook graag willen op een Ja/Nee veld of eventueel op het bijschrift bij dit veld.
Omdat dit niet mogelijk is via de Voorwaardelijke opmaak, vraag ik me af of dit soms via een VBA code kan verwezenlijkt worden.
Iemand die me hiermee kan helpen?

Groetjes,
Astra
 
Een bijschrift kun je wel een kleur geven, een Ja/Nee veld niet. Overigens snap ik niet waarom je zowel Voorwaardelijke opmaak gebruikt als een gebeurtenis (Bij Focus) want één optie zou al genoeg moeten zijn. Dat geldt dan niet voor een bijschrift, want dat kent geen voorwaardelijke opmaak. Dat zou je een kleur kunnen geven via de gebeurtenis <Bij aanwijzen> bijvoorbeeld.
 
Hallo Michel,

Oeps! Met "Bij focus" bedoelde ik eigenlijk "Veld heeft focus" in Voorwaardelijke opmaak.
Sorry...:o

Heb je soms een voorbeeldje bij de hand van de code die ik "Bij aanwijzen" moet zetten om een bijschrift te kleuren?

Alvast bedankt!
Astra
 
Hoi Astra,

Zelf gebruik ik GotFocus en LostFocus om mn controls te kleuren.
Gek genoeg wil het niet lukken om het bijschrift te kleuren als de achtergrondstijl op transparant staat. Maar indien dit op normaal staat dan lukt het wel met de volgende code:

Code:
Private Sub JouwTeKlikkenVeldNaamHier_GotFocus()
Me.JouwBijschriftNaamHier.BackColor = 255 
End Sub

Hopelijk heb je er wat aan

Groet : Jeroen
 
Laatst bewerkt:
Dat zou je een kleur kunnen geven via de gebeurtenis <Bij aanwijzen> bijvoorbeeld.

Volgens mij heeft een bijschrift of een Ja/Nee veld geen eigenschap "Bij aanwijzen". Volgens mij is dat een eigenschap voor een formulier en daar red je het niet mee volgens mij.
 
De gebeurtenis <Bij aanwijzen> bestaat inderdaad niet bij labels of controls, maar wel bij een Formulier, en daar doelde ik ook op. Had ik er misschien bij moeten zetten.
@Jeroen: het is niet zo gek dat je een achtergrondkleur niet kunt instellen als de stijl Transparant is. Dan is het object namelijk.... transparant! Een achtergrondkleur werkt logischerwijze alleen als de achtergrondstijl <Normaal> is.
Je krijgt dan bijvoorbeeld zoiets:

Code:
Private Sub Form_Current()
If Me.chkLeverbaar = -1 Then
    Me.lblLeverbaar.BackColor = 22000
Else
    Me.lblLeverbaar.BackColor = 255
End If
End Sub
Jammer genoeg werkt dit niet bij een doorlopend formulier, omdat je maar één object aanpast in het ontwerpscherm, maar er in een doorlopend formulier meer tegelijk ziet. De kleur van alle labes verandert dan als je naar een record gaat met een andere waarde, en dat wil je uiteraard niet. Een trucje om dat te omzeilen vind je hier... Het vereist wel het e.e.a. aan programmeren, en het geheel maakt je formulier er niet overdreven veel sneller op ;)
 
hi,

Via een truc lukt het (bijna).
Vervang de tabel voor het formulier met een query met een extra dummy veld bijv 'kleur' .
In het formulier kan je dit veld 'kleur' achter de ja/nee vraag positioneren.
Dit dummy veld geef je dan een vooraardelijke opmaak, bijv , ndien de ja/nee vraag waar is wordt de achtergrondkleur van het veld 'kleur' rood. Terwijl de gewone achtergrondkleur van het veld 'Kleur' groen is.

Door wat te spelen met de grootte van het ja/nee veld kan je overal op het groene vlakje klikken om het rood te krijgen.
Wanneer je door de kleuren het bos niet meer ziet, zie bijlage ;)
Groet JanvP.

Bijlage: Bekijk bijlage gekleurdaanvinken.zip
 
Beste Jeroen

works like a charm :):thumb:

Heel hartelijk bedankt!

Ook de anderen, mijn beste dank voor jullie moeite.

Astra
 
@Michel Ja ik was er inmiddels ook achter dat het onlogisch was om een kleur in te stellen als de veldeigenschap op transparant staat hahaha. Heb nog wel even zitten kijken hoe het te omzeilen maar het wil niet lukken omdat ik "transparant" niet weet te definieren in VBA. Ik las ergens dat je het kon doen met backcolor = vbtransparent maar dat werkt niet. Ook met andere workarounds kreeg ik het niet voor elkaar.

@Astra, graag gedaan ;)
 
@Jeroen:
Met Label.BackStyle=1 stel je de achtergrond in op Normaal, en met Label.BackStyle=0 op transparant.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan