- ベストアンサー
Win32APIで困っています
Win32APIでWM_PAINTメッセージを使って変数Bufの中の文字列を表示した場合に 表示した後になんらかのイベントを発生させて表示されている文字列に違う文字列を代入しても、画面に変化がありません。 画面を再描画する方法を教えてください よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>なんらかのイベントを発生させて表示されている文字列に違う文字列を代入しても この後に再描画しましたか? string = "abc"; でこのstringを描画したものを、 string = "xyz"; などに変更したんですよね? 変更した後にstringを描画するように、描画イベントを発生させましたか? 描画をどのように処理しているのかわかりませんが、描画イベントを自分で発生させないと描画してくれませんよ。
お礼
自己解決しました。 nebelさんの回答をヒントに頑張ってみた所、 無事動かすことが出来ました。 本当にありがとうございます。
補足
すいません。私が変なことを書いてたかもしれません。 よく分からないので少々抜けているかもしれません。 ボタンを一つ設置した時のソースです case WM_COMMAND: switch(LOWORD(wp)) { case BUTTON_ID1: MyConnect();/*自作関数です。実行するとBufに文字が入ります*/ break; } return 0; case WM_PAINT: hdc = BeginPaint(hwnd , &ps); TextOut(hdc , 200 , 200 , Buf , lstrlen(Buf)); EndPaint(hwnd , &ps); return 0; このように指定してもウィンドウにBufの中身が表示されずに困っている状況です