class Test{public:void mouse(); //鼠標點擊獲取坐標void getXY(Vector2 &p);//用戶主動獲取上次的坐標}調(diào)用的時候,Test test;test.mouse(); //然后鼠標操作test.getXY(p); //主動獲取,如果沒點擊完成,卡在這里等待。如上。我試過了 關鍵段,互斥量,事件。。。都沒成功。要么卡在getXY()上,不能鼠標操作。。要么直接getXY()已經(jīng)運行完了,鼠標還沒操作。。。。求大神。。。
3 回答

萬千封印
TA貢獻1891條經(jīng)驗 獲得超3個贊
沒看到具體實現(xiàn)代碼,不太好判斷什么問題
想要等待的話寫一個循環(huán),直到滿足條件,比如說鼠標點擊,然后退出循環(huán)

MYYA
TA貢獻1868條經(jīng)驗 獲得超4個贊
getXY()運行的時候,mouse()已經(jīng)運行結(jié)束,即便鼠標點擊也不會記錄其坐標了。這種情況應該采用多線程吧,getXY()函數(shù)掛起,等待mouse()函數(shù)結(jié)束后再運行。

aluckdog
TA貢獻1847條經(jīng)驗 獲得超7個贊
可以查一下回調(diào)函數(shù)的相關概念,將后續(xù)需要執(zhí)行的函數(shù)與將要執(zhí)行的函數(shù)關聯(lián),待函數(shù)執(zhí)行完成再調(diào)用后續(xù)的函數(shù)執(zhí)行
- 3 回答
- 0 關注
- 1460 瀏覽
添加回答
舉報
0/150
提交
取消