Fair enough, but keyloggers are programs that run on your own computer, so if you're on a trusted computer then you should be able to trust that there is no keylogger running. If you don't trust the computer, then don't use it for anything requiring personal or security information.
Also, there's nothing preventing a program from grabbing images of the screen in order to see what keys you're pressing.
Finally, it's not something that'll ever take off, because it's hassle. I don't want to be using the onscreen keyboard every time I need to enter passwords or bank details.