I did something like this before... I can't be specific about the exact code, since I haven't touched VB in ages, but I can (try and) give you the general gist.
I created a function for when the text box changes. It took the value of the text, and checked it against the values it should be, using an if statement (or a switch/select, whatever it is called). If it wasn't the correct value, you can set textBox.text to a blank value. This probably won't work, but it would be something like this:
Code:
function textBox changes (Should be pretty obvious what this is suppsed to be)
if textBox.text = "A" then
do whatever
else
textBox.text = ""
endif
If it already has a value in, you let the user add a character, and save the current string. You look at the right most character, and if it is a valid character, it replaces the current value, otherwise, it uses the existing value. e.g.
Code:
function textBox changes (Should be pretty obvious what this is suppsed to be)
Dim rightChar as string (Can't remember the data types)
rightChar = right(textBox.text,1)
if rightChar = "A" then
textBox.text = rightChar
else
textBox.text = left(textBox.text,1)
endif
Hope that helps! If that isn't what you wanted, feel free to shout at me. No doubt there's a far better way of doing it as well.