Scancode problem
Blitz3D Forums/Blitz3D Beginners Area/Scancode problem| 
 | ||
| the following code checks through scancodes for specific key hits, it should also differentiate between capitals and normal For lettx.text_letter = Each text_letter If KeyDown(42) = False And KeyDown(54) = False If (KeyHit(lettx\scancode) = True And Len(lettx\symbol$) = 1) Notify lettx\symbol$ EndIf ElseIf KeyDown(42) = True Or KeyDown(54) = True If (KeyHit(lettx\scancode) = True And Len(lettx\caps_symbol$) = 1) Notify lettx\caps_symbol$ EndIf EndIf Next when first running, when i press a letter i get lowercase as expected. holding down shift gets capital letters. However, once i release the shift key i still get capitals (no caps lock isnt on). Any suggestions? | 
| 
 | ||
| Seems to be something with 'notify' as if I modify your code to this it works: 
Graphics 800,600,32,2
SetBuffer FrontBuffer()
Repeat
If KeyDown(42) = False And KeyDown(54) = False
	If (KeyHit(30) = True And Len("a") = 1)
		Text 0,i, "a"
		i=i+15
	EndIf
ElseIf KeyDown(42) = True Or KeyDown(54) = True
		If (KeyHit(30) = True And Len("A") = 1)
			Text 0,i, "A"
			i=i+15
		EndIf
	 
EndIf
Flip
Until KeyDown(1)
End
 | 
| 
 | ||
| Thx for reply Matty. I inserted flushkeys() after the notify command, must be something to do with the repeat key function that kicks in when holding keys down, most curious - and irritating. Notify does have an affect though. although it works fine without flushkeys in both b3d and b+ when using text | 
| 
 | ||
| My guess is that Notify grabs focus and your program doesn't get the KeyUp events on the shift keys. |