這裏是我想要做的基本思想是:定時器抽象桂API
每個窗口小部件,當GUI的一部分訪問事件管理器。事件管理器是多態的,所以它包含來自底層圖形/定時器API的功能。我想要做的是,允許Widgets註冊計時器,他們將在那裏調用一個函數,這個函數會在內部調用事件管理器來註冊計時器。這是一個問題,當一個小部件首次創建時,它不是Gui的一部分。因此,沒有人可以在小部件構造函數中註冊計時器。
我想到了我可以對請求進行排隊以及當小部件成爲gui的一部分,並且可以訪問事件管理器時,它可以將請求出列的事實,但問題在於它並不是真的讓我做這樣的事情:
Timer *timer = registerTimer(0.17);
if(timer == NULL)
{
//uh ohs
}
else
{
timer->start();
}
有沒有更好的辦法解決我的問題?
感謝
爲了將來的參考,「圖形用戶界面」通常是寫在全部大寫或無大寫。只是一件小事讓我煩惱。 ;) – Maxpm 2011-04-03 04:26:11