因此我尝试创建一个控制台按钮底座(使用低级鼠标钩)用于控制台菜单(使用箭头键和回车键进行控制),我以前创建过,两个都可以单独工作,但我遇到了几个问题。鼠标挂钩需要(据我所知)消息循环以便工作,这反过来阻止线程和菜单要求线程不被阻止,以便它可以从键盘输入并更新屏幕上的菜单。那我该怎么办呢?
zzlelutf1#
简单地使用单独的线程。在一个线程(即主线程)中运行菜单,在另一个线程中运行鼠标钩子。否则,您可以在主线程中运行所有内容,只需编写消息循环和输入处理代码,使它们在等待消息/输入到达时不会阻塞线程,让它们定期返回到您的代码,以便您可以做其他工作。
1条答案
按热度按时间zzlelutf1#
简单地使用单独的线程。在一个线程(即主线程)中运行菜单,在另一个线程中运行鼠标钩子。
否则,您可以在主线程中运行所有内容,只需编写消息循环和输入处理代码,使它们在等待消息/输入到达时不会阻塞线程,让它们定期返回到您的代码,以便您可以做其他工作。