Subformulier "disablen" en "greyed-out" maken

  • Onderwerp starter Onderwerp starter IsR
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

IsR

Gebruiker
Lid geworden
2 jul 2015
Berichten
94
Goedendag,

Ik heb een subformulier in een gegevensbladweergave op een tabbesturingselement geplaatst.

Ik kan het subformulier uitschakelen (via me.subformuliernaam.enabled = false), maar hoe krijg ik nu ook de grijze kleur die ik wel bij de overige besturingselementen zie als ze "disabled"zijn?

Voor de overige besturingselmenten van het hoofdformulier heb ik een "for-each"-constructie gebruikt en in de form_current geplaatst.

Code:
For Each ctl In Controls
      With ctl
        Select Case .ControlType
         Case acTextBox, acComboBox
            ctl.Enabled = False
      End Select
    End With
    Next ctl

Heb al gezocht op dit forum en de gebruikelijke zoekmachines geraadpleegd, maar ik ben nog niet verder gekomen.....
Wie kan me wel helpen?
Alvast bedankt voor de genomen moeite, een poging te wagen
 
maar hoe krijg ik nu ook de grijze kleur die ik wel bij de overige besturingselementen zie als ze "disabled"zijn?
Grappig; ik heb menig uurtje besteed aan het voorkomen dat disablede objecten grijs worden; ik vind het het toonbeeld van lelijkheid :). Ik maak dat onderscheid veel liever met een kleurtje. Ik combineer .Enabled dus altijd met .Locked = True. En dan een kleurtje er overheen. Dus mij hoor je niet klagen dat formulieren wel uitgeschakeld kunnen worden, maar niet grijs :).

Je kunt googlen tot je een ons weegt, maar daar ga je geen antwoord op vinden, want dat is er gewoon niet. Is ook hartstikke logisch: een enkel object is precies dat: een enkel object. Een formulier is dat niet. Dat bevat allerlei verschillende objecten, met verschillende eigenschappen. Ben benieuwd waar je het voor nodig had trouwens :)
 
Hoi Octafish,

Ik wil het gebruiken zodat zolang de gebruiker alleen zoekt en niet invoert, het overduidelijk is ;) , dat men niet in kan voeren.
Zodra er geklikt wordt op een knop "Nieuw" of "Edit", wordt alles actief.

"Enabled" en "Locked" werkt op zich prima, maar hoe krijg ik nu het formulier in gegevensblad weergave in een andere kleur.
subformulier.backcolor bestaat nl. niet en iets anders heb ik niet kunnen vinden. Kan ik daar "Datasheetbackcolor" voor gebruiken en in welke syntax dan?
 
... maar hoe krijg ik nu het formulier in gegevensblad weergave in een andere kleur.
Ik zou daar toch echt niet aan beginnen, je weet niet wat je jezelf aandoet :). Het is toch veel simpeler om een label in de koptekst van het formulier te zetten, of op het tabblad, nog makkelijker, met de tekst: "Alleen zoeken", "Nieuw record toevoegen" of "Muteren", al naargelang de status van het formulier?
 
Nou ja, het heeft toch de voorkeur en laat ik nu net voor jouw reactie toch nog een antwoord gevonden hebben (ook op helpmij.nl en van jou dus....toch zijn er blijkbaar meer mensen met een zelfde wens, handig of minder hanidg/complex ;).

Inderdaad de datasheet-variant, maar een iets andere syntax dan vermeld op het forum:

Gevonden:
Code:
Me!Subformuliernaam!Form.DatasheetBackColor = RGB(181, 203, 136)
Bij mij werkte de uitroeptekens niet, maar bij mij werkte dit:
Code:
Me.Subformuliernaam.Form.DatasheetBackColor = RGB(181, 203, 136)
.

Al met al toch weer opgelost, zoals gezegd misschien niet op de beste, mooiste manier, maar voor mij nu wel het meest functioneel.
Al doende leert men.
Dank weer voor het meedenken.
 
Ik gruwel van Datasheet weergave, vandaar dat ik de oplossing had verdrongen :).
 
Wie weet, deel ik nog een keer jouw mening in deze (als ik vaardiger ben geworden in databaseontwerp) maar ga er voor nu toch mee aan de slag :thumb: .
Heb het draadje op opgelost gezet
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan