[Access] Tekstbox afhankelijk van selectievakje

Pagina: 1
Acties:
  • 636 views sinds 30-01-2008
  • Reageer

  • Fire_Bird
  • Registratie: September 2001
  • Laatst online: 21-08 11:09
Ik ben al een tijd aan het spitten hier op GoT maar kom er niet uit
De bedoeling is om een tekstvak pas actief te laten worden zodra er het vink-vakje voor word aangezet.
Als iemand afwezig is moet dus zegmaar een vakje worden aangevinkt, en hierdoor moet een opmerkingenvak actief worden, dit heb ik nu;

PHP:
1
2
3
4
5
6
7
Private Sub Form_Load()
    Opmerkingen.Enabled = False
End Sub

Private Sub Afwezig_Click()
    Opmerkingen.Enabled = True
End Sub



edit:

heb niet veel verstand van acces, maar wil dit wel graag voor elkaar krijgen, en jah heb al search gebruikt en google etc. maar kom er niet uit..ben een totale n00b op het gebied van VB.

[ Voor 19% gewijzigd door Fire_Bird op 13-10-2003 11:05 ]


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

Het lijkt me VBA in plaats van PHP denk ik he? ;)

Stel de waarden voor alle zaken in zoals je die in beginsel wil hebben. Vervolgens zorg je ervoor dat bij de OnClick van de checkbox de textbox.Visible de waarde krijgt van selectievak. Dus als iemand het selectievakje 'aan' zet, wordt de textbox visible, als iemand het selectievakje 'uit' zet, verdwijnt het textboxje weer.

Als je er niet uit komt: verduidelijk je post een beetje, want heel veel duidelijkheid verschaft hij momenteel niet.

My personal website


  • Fire_Bird
  • Registratie: September 2001
  • Laatst online: 21-08 11:09
OZ-Gump schreef op 13 October 2003 @ 11:06:
Het lijkt me VBA in plaats van PHP denk ik he? ;)

Stel de waarden voor alle zaken in zoals je die in beginsel wil hebben. Vervolgens zorg je ervoor dat bij de OnClick van de checkbox de textbox.Visible de waarde krijgt van selectievak. Dus als iemand het selectievakje 'aan' zet, wordt de textbox visible, als iemand het selectievakje 'uit' zet, verdwijnt het textboxje weer.

Als je er niet uit komt: verduidelijk je post een beetje, want heel veel duidelijkheid verschaft hij momenteel niet.
tsjah verduidelijken? zie openingspost, heb geen idee hoe ik het aan moet pakken, maar wat jij zegt is precies de bedoeling iig..maar HOE is de vraag :)

1 selectievakje, zodra deze word AANGEVINKT moet een tekstvak ACTIEF worden, beide velden komen voor in een tabel omdat hier weer een query op berust...

[ Voor 15% gewijzigd door Fire_Bird op 13-10-2003 11:08 ]


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

Zoals ik al aangaf:
bij de onclick van je selectievak zet je
code:
1
textboxNaam.visible = selectievakNaam

My personal website


  • WhizzCat
  • Registratie: November 2001
  • Laatst online: 03-10-2025

WhizzCat

www.lichtsignaal.nl

Ik zou het met een if constructie in je afwezig_click doen

edit: onzin, sorry :+

[ Voor 67% gewijzigd door WhizzCat op 13-10-2003 11:11 ]

Gezocht: netwerkbeheerder
Als je het niet aan een 6-jarige kan uitleggen, snap je er zelf ook niks van! - A. Einstein


  • Fire_Bird
  • Registratie: September 2001
  • Laatst online: 21-08 11:09
WhizzCat schreef op 13 October 2003 @ 11:10:
Ik zou het met een if constructie in je afwezig_click doen

edit: onzin, sorry :+
en hoe bouw je zo iets op? wat ik intyp geeft ie fouten bij, zal zo ff de code posten

  • jwpmzijl
  • Registratie: December 2002
  • Laatst online: 21-06 09:07
Het probleem is dat je niet aangeeft welke control bedoeld is. OK, de naam van de control is Opmerkingen maar Access weet dan nog niet waar hij de control moet zoeken. Wat je moet doen is

me.opmerkingen.enabled = true

Door het codewoord me. weet Access dat hij op het actieve formulier moet gaan zoeken naar de control.

Hans van Zijl


  • MissingDog
  • Registratie: Augustus 2002
  • Niet online
code:
1
2
3
4
5
6
7
8
Private Sub chkOptie_Click ()
Select Case chkOptie.Value
    Case 0
        txtTextbox.visible = false
    Case 1
       txtTextbox.visible = true
End Select
End Sub



Zoiets?

[ Voor 10% gewijzigd door MissingDog op 13-10-2003 11:18 ]


  • Fire_Bird
  • Registratie: September 2001
  • Laatst online: 21-08 11:09
jwpmzijl schreef op 13 oktober 2003 @ 11:14:
Het probleem is dat je niet aangeeft welke control bedoeld is. OK, de naam van de control is Opmerkingen maar Access weet dan nog niet waar hij de control moet zoeken. Wat je moet doen is

me.opmerkingen.enabled = true

Door het codewoord me. weet Access dat hij op het actieve formulier moet gaan zoeken naar de control.
dat is hetzelfde als dit;

Private Sub Afwezig_Click()
Opmerkingen.Enabled = True
End Sub

daar doet hij het ook wel mee hoor
maar die moet pas TRUE worden als AFWEZIG dus de waarde JA heeft

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

OZ-Gump in [Access] Tekstbox afhankelijk van selectievakje !!!

[ Voor 6% gewijzigd door OZ-Gump op 13-10-2003 11:21 ]

My personal website


  • Force
  • Registratie: Januari 2000
  • Laatst online: 31-07-2023

Force

Kan iemand ff me neus afvegen?

is dit niet gewoon de oplossing :

edit: doet hetzelfde als de post van MissingDog

code:
1
2
3
4
5
6
7
Private Sub Afwezig_Click() 
 if me![afwezig] = true then 
  me![Opmerkingen].Enabled = True 
 else
  me![Opmerkingen].Enabled = false
 endif
End Sub


en natuurlijk ook bij form_open controleren wat de waarde van afwezig is.

Dit werkt overigens alleen bij een enkelvoudig formulier (dus 1 record zichtbaar). Als je een lijst met records op je formulier hebt staan werkt dit niet, opmerkingen word dan voor alle records enabled of disabled. (is dat je probleem ?)

[ Voor 5% gewijzigd door Force op 13-10-2003 11:25 ]

Leven is als een pijpkaneel, iedereen zuigt eraan en krijgt zijn deel.


  • MissingDog
  • Registratie: Augustus 2002
  • Niet online
Ik ziet um, de reden van mijn uitwerking is dat VB(A) niet altijd even goed omgaat met de conversie tussen 0/1 Booleans naar True/False.

  • Fire_Bird
  • Registratie: September 2001
  • Laatst online: 21-08 11:09
Force schreef op 13 October 2003 @ 11:22:
is dit niet gewoon de oplossing :

edit: doet hetzelfde als de post van MissingDog

code:
1
2
3
4
5
6
7
Private Sub Afwezig_Click() 
 if me![afwezig] = true then 
  me![Opmerkingen].Enabled = True 
 else
  me![Opmerkingen].Enabled = false
 endif
End Sub


en natuurlijk ook bij form_open controleren wat de waarde van afwezig is.

Dit werkt overigens alleen bij een enkelvoudig formulier (dus 1 record zichtbaar). Als je een lijst met records op je formulier hebt staan werkt dit niet, opmerkingen word dan voor alle records enabled of disabled. (is dat je probleem ?)
hmz, werkt opzich goed, maar idd als je dit hebt werkt het voor alles, en niet specifiek voor het record waar de waarde JA is voor Afwezig, dus gelijk voor alles...valt dit nog anders te doen of niet?
Weet niet of het mogelijk is, maar eigenlijk als je dus de status afwezig weer UIT vinkt dan zou het mooi zijn als de opmerkingen leeg werd gemaakt O-)
zal eventueel even een screenshot plaatsen van het gebeuren..

* Fire_Bird heeft inmiddels een VBA boek besteld :)

[ Voor 11% gewijzigd door Fire_Bird op 13-10-2003 11:31 ]


  • Force
  • Registratie: Januari 2000
  • Laatst online: 31-07-2023

Force

Kan iemand ff me neus afvegen?

leeg maken bij uitvinken is niet zo moeilijk:

code:
1
2
3
4
5
6
7
8
Private Sub Afwezig_Click() 
 if me![afwezig] = true then 
  me![Opmerkingen].Enabled = True 
 else
  me![Opmerkingen].Enabled = false
  me![opmerkingen] = ""      ' of null
 endif
End Sub


edit: leegmaken geld dus wel aleen voor het huidige record.

[ Voor 14% gewijzigd door Force op 13-10-2003 11:41 ]

Leven is als een pijpkaneel, iedereen zuigt eraan en krijgt zijn deel.


  • Force
  • Registratie: Januari 2000
  • Laatst online: 31-07-2023

Force

Kan iemand ff me neus afvegen?

Fire_Bird schreef op 13 oktober 2003 @ 11:29:
[...]

hmz, werkt opzich goed, maar idd als je dit hebt werkt het voor alles, en niet specifiek voor het record waar de waarde JA is voor Afwezig, dus gelijk voor alles...valt dit nog anders te doen of niet?
In principe is wat je wil niet mogelijk, maar wat je zou kunnen doen(het is niet mooi, maar werkt wel) is het volgende:

Zet bij het het opmerkingen veld bij "bij focus" de volgende code:

code:
1
2
3
4
If me![afwezig] = false          'dus niet aangevinkt
 msgbox "Je mag niets invullen, want persoon is aanwezig"
 me![afwezig].setfocus
endif


Als iemand dus op het opmerkingen veld klikt en afwezig is niet aangevinkt krijgt hij een melding en word de focus weer op afwezig gezet. Let wel op dat je opmerkingen dan niet meeneemt in je tab volgorde, anders word het wel erg vervelend.
Zoals ik al zei het voorkomt invoeren als afwezig = false, maar kan wel irritante bijverschijnselen vertonen. Die overigens ook wel weer voor een deel af te vangen zijn, maar dat moet je maar even uitzoeken. Denk dat je al een aardig stukje kan komen met de voorbeelden hier in combinatie met de help files.

Leven is als een pijpkaneel, iedereen zuigt eraan en krijgt zijn deel.


  • Boss
  • Registratie: September 1999
  • Laatst online: 22:38

Boss

+1 Overgewaardeerd

Zet bij het 'bij aanwijzen' event van je formulier een verwijzing naar de event die je laat uitvoeren bij het wijzigen van het selectievakje.

Dan krijg je dus:
code:
1
2
3
Private Sub Form_Current()
  Afwezig_Click
End Sub

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.


  • thomrob
  • Registratie: Maart 2001
  • Laatst online: 22-05 12:22

thomrob

allround developer

Private Sub Afwezig_Click()

me![Opmerkingen].Enabled = me.afwezig

End Sub

  • Bu588
  • Registratie: Maart 2000
  • Laatst online: 22-12-2025
Wat dacht je van
code:
1
2
3
4
5
Private Sub Afwezig_Click()

Me!opmerkingen.Enabled = Me!Afwezig

End Sub

Dan wordt het vak opmerkingen ook weer Disabled als je een vinkje weghaalt. En natuurlijk heb je ook de procedure nodig bij Bij aanwijzen (On Current in het Engels), anders kan het van opmerkingen Enabled blijven bij een volgend record.

Oeps, Thomrob was sneller, maar ik heb meer uitleg ;)

[ Voor 8% gewijzigd door Bu588 op 14-10-2003 09:10 . Reden: osting van Thomrob niet goed gelezen :( ]

Nothing is fool-proof to a sufficiently talented fool...

Pagina: 1