たぽブログ
車,音楽,コンピュータ,etc...2000/11/30(木): 改善求む
- ちょっと携帯に出るのが遅いからって怒るな.
- 俺がちょっと不満を言ったからって「振られる」とか言っていじけるな.お前はいつも山ほど俺に文句言ってるだろ.
- いくら眠いからってケンカの最中に寝るな.
- …
というか,そうでないことのが少ないだろう.
そのイライラをあまり溜め込むのもいかんが,
文句ばっかり言ってちゃその嫌なことを再認識してかみしめることになるんでないの?
だいたい文句ばっかりブーブー言われちゃこっちのテンションも下がるっつーの.
ん?むしろヒートアップしてるのか?まあどっちでもいいや.
とにかく,そとづらばっかりよくって俺は愚痴られてばっかりで気分いいわけない.
親しき中にも礼儀あり.
自分の発言や行動によって相手がどういう気持ちになるか,もうちょっと考えて欲しいものだ.
どうせあしたになったらケロッと忘れてるんだろうけど.
2000/11/30(木): マルチメディアタイマー
OnTimer() じゃなくてマルチメディアタイマーとやらを使うようにしてみた.
これでたぶん Win9X でも 18fps の壁を越えれるはず.
でも,メンバ関数をコールバック関数にするためには,
static関数にしなくてはならない.
すると static でないメンバ変数にアクセスできなくなるので,
上のようにユーザがコールバック関数に渡せる引数
dwUserに自分自身のポインタ(CWinTabView*)を渡すのだが,
このコールバック関数の中(コールバック関数から呼ばれる関数も含む)で
UpdateAllViews() とかすると CDocument の ASSERT_VALID(pView) に引っかかる.
Invalidate() でメッセージを介して画面更新するとアサートしないので,
ところで Win9X のユーザリソース食いつぶし現象はどうなったんだっけ…?
これでたぶん Win9X でも 18fps の壁を越えれるはず.
でも,メンバ関数をコールバック関数にするためには,
static void CALLBACK TimeProc( UINT uTimerID, UINT uMsg,と
DWORD dwUser, DWORD dwParam1, DWORD dwParam2 );
呼び出す方は,
m_TimerID = timeSetEvent(m_TimerDelay, m_TimerResolution, &TimeProc,
(DWORD)this, TIME_PERIODIC);
static関数にしなくてはならない.
すると static でないメンバ変数にアクセスできなくなるので,
上のようにユーザがコールバック関数に渡せる引数
dwUserに自分自身のポインタ(CWinTabView*)を渡すのだが,
このコールバック関数の中(コールバック関数から呼ばれる関数も含む)で
UpdateAllViews() とかすると CDocument の ASSERT_VALID(pView) に引っかかる.
Invalidate() でメッセージを介して画面更新するとアサートしないので,
View->SendMessage(WM_USER_PUSHING, nFlags,(LPARAM)&point);というようにユーザメッセージを送るようにした.
ところで Win9X のユーザリソース食いつぶし現象はどうなったんだっけ…?