Sign in to follow this  

Cross-Platform MonoGame textbox

Recommended Posts

So im trying to make a cross-platform game using C# .net, mono and monogame.


I'm trying to make a textbox UI control for my game, I can do all the graphics and mouse handling for UI controls but the only problem I have is the actual text input for textbox's.


I used to use Promits oldish 32-bit code located here (promits post) and here (tutorial on how to use), the problem is though I want to develop a game that has the ability to run on Windows, Mac OS and Linux. And its obvious that code wont work on Linux or Mac.


I'm looking for a way that will allow for text input (including cmd inputs - so i can handle things like tab and control v), which will work on windows/mac and linux.


Even if there are any ideas on how to solve this that are specific for each platform that would be greatly appreciated.


(The KeyboardState class in XNA/MonoGame wont suffice for such a implementation that I want - a real working textbox).


All replies are appreciated, thanks.



Edit: probably should have put this in the general programming forum since its to do with acquiring text/keyboard input on OS's, can a moderator move if possible?

Edited by Xanather

Share this post

Link to post
Share on other sites
monogame has API functions for keyboard input, use them to check what key is pressed?

Yes it does, but its not good for actual typing/inputting text. It requires polling, and if the update rate for the game is not high enough some keys may be missed. You also have to handle all the shift/caps modifiers yourself, keep track of previously pressed keys, etc... Just not worth it, thanks though.


Not familiar with how Monogame handles input, but "rich" keyboard input is not trivial when you start factoring in localization. You will likely have to write input handling for each OS you want to support.

Possibly you can get some ideas from OpenTK source over at

I might just look at that thanks (completely forgot about OpenGL/TK).

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this