Win32API質問箱 Build64at TECH
Win32API質問箱 Build64 - 暇つぶし2ch474:デフォルトの名無しさん
08/04/12 18:39:19
どう考えても粘着しているのは「知らないならレスしないでください」と言われた回答者です。
本当にありがとうございました。

475:デフォルトの名無しさん
08/04/12 19:04:24
あなたの代わりにMSDNで調べてあげるスレ

ってのを作って分離しようよ

476:デフォルトの名無しさん
08/04/12 19:05:32
グローバル変数の話は↓のスレを再利用してやってくれ

sizeof(char)が必ず1でも、省略すべきではない
スレリンク(tech板)

477:デフォルトの名無しさん
08/04/12 19:37:18
>>475
お前がそのスレ立てろ、今すぐに(笑)

478:デフォルトの名無しさん
08/04/12 19:49:11
ピクチャーボックス再描画について質問です.

状況は次の通りで, 2.の消える問題を解決したいです.
1. 他のウインドウが重なっても, 重なっているウィンドウを移動させると
  隠れていた部分が再描画される.
2. 他のウインドウが重なっていて, 重なっているウィンドウを終了させると
  隠れていた部分が消える.

やっている処理はこんな感じです.
1. 裏画面に表示データをセット → InvalidateRect
2. WM_PAINT処理では, BeginPaint → BitBlt → EndPaint

何をトリガーに再描画指示を出せばよいか, アドバイスお願いします.

479:デフォルトの名無しさん
08/04/12 20:18:22
>何をトリガーに
WM_PAINTじゃね? 最近(Vista)のアエロじゃ発生しないらしいけど

480:デフォルトの名無しさん
08/04/12 20:20:43
>>478
> 何をトリガーに再描画指示を出せばよいか

その発想が間違ってる。

表示内容が変ったらOSに伝える
再描画タイミングはOSが判断する

WM_PAINTが適切に送られてこない、あるいは、
BeginPaintで適切な領域が指示されないために、
正しく表示されないのであれば、
OSに不適切な値を渡していると思われる。

481:デフォルトの名無しさん
08/04/12 20:21:53
アエロ…………プクク(笑)

482:デフォルトの名無しさん
08/04/12 20:25:06
>>478
ウィンドウを内容を表示したまま移動 → WM_PAINTを何度も受け取るので多少失敗していても気がつかない
だったりして。

483:デフォルトの名無しさん
08/04/12 20:25:32
WM_PAINT以外にも描画しないといけないメッセージがあるけど、
それ関係ない?

484:デフォルトの名無しさん
08/04/12 20:32:13
NTFSのアクセス権チェック方法として、ACEを取得する必要があるのがわかったのだが、
自身の権限と取得されたACEの中で一番有効なACEと比較しなければならないとおもうのだが、
どのACEが有効となっているかの判断はどうすればよろしいでしょうか?
※関連:GetFileSecurity、GetSecurityDescriptorDacl

485:デフォルトの名無しさん
08/04/12 20:51:24
>>478
ピクチャーボックスってVBか.NETの事か?
それともStaticコントロールをそう呼んでるのか?

いずれにしろピクチャーボックスなんてコントロールはWin32には無い
Staticコントロールに描画したいならSS_OWNERDRAWスタイルにしてWM_DRAWITEMに応答しとけ

486:デフォルトの名無しさん
08/04/12 21:05:37
なんかおまいらひまだな。。。。
最近ニュースで話題の学校裏サイト状態w
でも、ほんとはここはWin32APIスレですよ。


487:デフォルトの名無しさん
08/04/12 21:06:34
>>481
Aeroをローマ字として読むとアエロになるから別におかしくないだろ
無知は黙ってろよ

488:デフォルトの名無しさん
08/04/12 21:33:26
Googleはゴーグルって読むんだよ
無知は黙ってろ
Yahooはヤホーって読むんだよ
無知は黙ってろ
gooはゴーって読むんだよ
無知は黙ってろ

489:デフォルトの名無しさん
08/04/12 21:34:19
煽りも煽られもいらないっす

490:デフォルトの名無しさん
08/04/12 21:39:41
自作アプリで状況に応じて、BS入力の可否を制御するプログラムを作ってるところで、
少し聞きたいことがありまつ。

Viewで処理前にWM_CHARをとらえて、それでBSおよびCtrl+BSを禁止する方向で
BSの場合は、VK_BS(0x09)で検知できた。<= OK
BS+Ctrlが捕えられなかったので調べると、wparamに0x7fが入ってた。 <= これが不思議
0x7fを調べるとVK_F16。まずF16なんて使ったことないしF16ってなんなの?押せるの?
0x7fって昔の記憶ではDELETEボタンだったなあと思いつつ、それとは何か関係ある?

0x7fで処理してしまえばそれでプログラム的にはOKなんだけど、
詳しい人もけっこういるので質問させて。


491:デフォルトの名無しさん
08/04/12 22:09:25
WM_CHARだと仮想キーコードではなく、
ASCIIとかの文字コードだと見なすべきだと思う。

そういう意味では0x7f = DELに1票。
VK_BACK = 0x09もASCIIではBSだし。

仮想キーコードが出てくるのはWM_KEYDOWN/UP系だよ。

492:デフォルトの名無しさん
08/04/12 22:11:27
あああ、そうだった。VKで処理しちゃだめだったね。
どうもありがとう!

493:デフォルトの名無しさん
08/04/12 22:18:03
491さんにごめんなさいな追加カキコ。
VK_BS(0x09)って書いたけど、厳密には0x08でした。
ASCIIでももちろん0x08です。

494:デフォルトの名無しさん
08/04/12 22:25:46
質問
SetRectの存在意義がわかりません


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch