使用TRueType字体编写SDL程序。我调用TTF_Init()初始化TTF,并使用TTF_OpenFont( name, size )打开字体。

我有一个例程使用以下命令将空终止的文本字符串插入到列表框中:
sdl_surface=TTF_RenderText_Solid( font, data, sdl_color)。此例程适用于我,然后将曲面涂抹到listbox曲面并删除从RenderText返回的曲面。我一遍又一遍地执行此操作,并且在大多数情况下都有效。但是在输入的第11个字符串上它挂起了。没有错误只会锁定程序。我知道这没什么大不了的,但是我被困住了。

最佳答案

您在打电话SDL_FreeSurface吗?

if (sdl_surface != NULL) SDL_FreeSurface(sdl_surface);
sdl_surface=TTF_RenderText_Solid( font, data, sdl_color)

关于c - TTF_RenderText锁定,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6997285/

10-16 17:02