好的,我一直在研究SDL中的文本输入(如何将键击数据转换为字母并将它们附加到名为Text的std :: string),大多数教程都以这种方式覆盖它:
//If a key was pressed
if(event->type == SDL_KEYDOWN )
{
//If the key is a lowercase letter
else if( (event->key.keysym.unicode >= (Uint16)'a' ) && (event->key.keysym.unicode <= (Uint16)'z' ) )
{
//Append the character
Text += (char)event->key.keysym.unicode;
}
}
然而,经过一些搜索,我在SDL标题中发现了一条说明。不推荐使用.unicode并使用 SDL_TextInputEvent / SDL_TextEditingEvent 。在SDL文档维基中有一些参考,但是我找不到任何关于如何使用它的例子。例如,如何使用新结构编写上述代码段?