• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Windowをドラッグ移動したい)

Windowをドラッグ移動したい

このQ&Aのポイント
  • Windowをドラッグ移動するためのコードを紹介します。
  • マウスがクライアント領域からはずれると正常に動作しない場合があります。
  • 素早く動かすとタイトルバーをドラッグ移動したときのように動作しない場合があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • toshi_yn
  • ベストアンサー率50% (5/10)
回答No.1

私も同じ悩みを持ったことがありまして以下の手で対策しました。 以下のコードをOnMouseDownイベントに書きます。これで自由に動かすことが出来ます。 ReleaseCapture(); SendMessage(Handle, WM_SYSCOMMAND, SC_MOVE+2, 0); 以上、ご参考になれば幸いです。

nubou
質問者

お礼

ありがとうございました 以下のようにしたらほとんどクライアントからはずれなくなりました case WM_MOUSEMOVE:  if(wP==MK_LBUTTON)  {   if(0<=i_x && 0<=i_y)   {    GetWindowRect(hW,&rt);    MoveWindow (hW, rt.left+LOWORD(lP)-i_x, rt.top+HIWORD(lP)-i_y, rt.right-rt.left,rt.bottom-rt.top,1);   }  }  else i_x=i_y=-1;  return 0; case WM_LBUTTONDOWN:  ReleaseCapture();  SendMessage(hW,WM_SYSCOMMAND,SC_MOVE+2,0);  i_x=LOWORD(lP);i_y=HIWORD(lP);  return 0;

関連するQ&A