忍者ブログ
ADMINNEW ENTRY
C A L E N D A R
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

HP→http://sora-blue.net/~kuar/index.html
No.368 No.367 No.366 No.365 No.364 No.363 No.362 No.361 No.360 No.359 No.358
2024-04-24(Wed)
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。



2009-03-20(Fri)
無題
Cと奮闘中。
ダウンロード(c)
まだフレーム作成、画像の表示+透過処理、窓枠消し、背景透過までしかやってねーぞ
なのに何このプログラム量。
まだ4〜5割しかプログラムが把握できていない訳だがだいぶんわかるようにはなってきた。

wc.hbrBackground = GetStockObject(NULL_BRUSH);
これで背景そのものは透明色になってくれるわけではないらしい。
現実的にはそうみえるのだが移動を行った際にいろいろと残念なことになる。
PAINTが行われた時だけその背景の色を背景色とするような処理らしくなんらかの方法で再描画してやらないと透過していることにはならない。
本来再描画はWM_PAINTで行うものなのだが今回はWM_PAINTでは全く効いてくれない。
フレームそのものを再描画してやらないことには思った通りには動かないようだ。
(一旦アプリケーションを後ろにやって戻したそのときはあたかも透過されているようにみえるが動かすとまるで駄目)
つまりはフレームそのものはリペイントされていないのではなかろうか。
PR



・C O M M E N T
  • この記事へのコメント投稿フォームです。


  • Name:
    Title:
    Mail:
    Url:
    Color:
    Decoration:
    Vodafone絵文字 i-mode絵文字 Ezweb絵文字
    Message:
    Pass:
    ※編集時に必要です。

    ・無題
    WM_PAINTが送られてくるっていうのは単にシステムが
    『再描画すべき段階になったけど、どうする?』っていう連絡をよこしているにすぎないから、
    実際に再描画するかどうか(その為の処理を作るかどうか)は作り手次第なのよな

    つまりところ再描画する処理を別に関数化しちまって、
    再描画 or 必要な時(例えばアプリ起動直後)に呼び出すようにすれば
    ある程度は描画のタイミングを管理できるんでねーかい?
    当然、その『再描画関数』を実行する事で背景がキチンと透過されると保証できる状態でなければならんけど。

    TRACKBACK
    • この記事のURLとトラックバックURLです。
    • 必要に応じてご使用くださいませ。
    この記事のURL▽
    この記事のトラックバックURL▽
    No.368 No.367 No.366 No.365 No.364 No.363 No.362 No.361 No.360 No.359 No.358

    Powered by NinjaBlog. Template by うさねこ.
    忍者ブログ[PR]