• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Active Basic 枠無しウインドウをマウスで移動させる)

Active Basic枠無しウインドウをマウスで移動させる

このQ&Aのポイント
  • 枠なしのウインドウをマウスで移動させる方法を教えてください
  • Active Basicの非公式WIKIが復活しないか知りたいです
  • ご教授いただける方がいらっしゃいましたら、よろしくお願いします

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

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

マウスボタンを押したときのX/Y座標を記憶しておいて MouseMoveに来た時点引数のX/Yと差分を計算し この値をScreen座標に変換してから SetWindowPosに与えましょう 'グローバル変数 dim pt as POINTAPI Dim LClickFlag As Long Sub MainWnd_LButtonDown(flags As Long, x As Integer, y As Integer)   if LClickFlag=FALSE then     LClickFlag=TRUE     pt.x = x     pt.y = y   end if End Sub Sub MainWnd_LButtonUp(flags As Long, x As Integer, y As Integer) if LClickFlag=TRUE then   LClickFlag=FALSE end if End Sub Sub MainWnd_MouseMove(flags As Long, x As Integer, y As Integer)   If LClickFlag=TRUE Then     dim ptScr as POINTPAI     ptScr.x = x - pt.x     ptScr.y = y - pt.y     ClientToScreen( hMainWnd, ptSrc )     SetWindowPos(hMainWnd,NULL,ptSrc.x,ptSrc.y,0,0,SWP_NOSIZE)   End If End Sub といった具合です