多线程序问题,在一个线程中销毁一个窗口上的按钮。怎么实现?Win32 API
我在主窗口建了一个按钮,我想在一个新建的线程里将其销毁。我在线程函数中用:DestroyWindow(hButton);但是主窗口上的Button好好的,必没有销毁。我改...
我在主窗口建了一个按钮,我想在一个新建的线程里将其销毁。我在线程函数中用:
DestroyWindow(hButton);
但是主窗口上的Button好好的,必没有销毁。我改hButton为静态变量,也不行,
请高手指导。 展开
DestroyWindow(hButton);
但是主窗口上的Button好好的,必没有销毁。我改hButton为静态变量,也不行,
请高手指导。 展开
1个回答
展开全部
A thread cannot use DestroyWindow to destroy a window created by a different thread.
不能从一个线程中Destroy其他线程创建的Windows。
你检查一下:DestroyWindow是否返回成功,使用GetLastError()查一下错误原因。
不能从一个线程中Destroy其他线程创建的Windows。
你检查一下:DestroyWindow是否返回成功,使用GetLastError()查一下错误原因。
更多追问追答
追问
GetLastError为5:拒绝访问,这个怎么办?
追答
说明确实如msdn所说。你可以从这个线程post一个消息给主窗口线程,由主窗口线程处理。从逻辑上来说,谁创建的窗口应该由谁销毁。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询