2012-05-13 64 views
0

我需要清除在動畫結束之前發生的任何鼠標點擊。之後只需要考慮鼠標點擊。 我試圖在動畫後啓用我的鼠標功能,但考慮到動畫過程中發生的任何點擊。 據我瞭解,有一個緩衝區,其中存儲了鼠標點擊,並且在任何鼠標回調過程中,它都需要存儲在該緩衝區中的第一次點擊的座標和任何其他信息。因此,我需要知道如何清除此問題。 我用fflush(stdin),但它不清除鍵盤或鼠標緩衝區。 上午在C language.i使用的是WindowsXP和編程visualsudio2008還使用glut.h在openGL中清除鼠標點擊緩衝區

回答

0

我也用glut.h

那麼你不能。如果您正在進行動畫製作,則需要來處理(或選擇不處理)任何消息。

您不應該通過在內循環顯示來顯示您的顯示方法。相反,你應該設置一個定時器回調函數或者將調用glutPostRedisplay的東西,它會不斷調用你的繪圖方法。在此期間,如果您不想處理它們,您應該忽略任何消息。

+0

:謝謝。我知道我應該叫glutPostRedisplay.But我不想重新設計我的程序now.All我需要的是清除輸入緩衝區,每當我想,這反過來將使我的程序錯誤免費。 – user1391868

+0

@ user1391868:想要的東西很好。這不會使他們*可能*,但你可以*想*他們;) –

+0

:是的:)確保我的其他程序沒有設計缺陷。雖然我想知道爲什麼這樣的功能是不可能的 – user1391868