Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
マウス移動時の制御について(コントロール)
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=30174#CommentId82552
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
やむちゃ
 (社会人)
投稿日時
2016/10/11 20:45:13
以下のようなコードで
フォーム上に配置したテキストボックス等のコントロールを
マウスでドラッグアンドドロップ可能にしました。
これを、
①コントロールの開始位置から同じX方向か同じY方向にしか移動できないようにしたい。
(将棋の飛車のような動き)
②①のような動きで、Ctrlキーでのコピー処理をしたい。
のように改造したいのですが、行き詰っています。
どのようにすればよいか、アドバイスをお願いいたします。
Public Class Form1
Private StartPositon As Size
Private Sub TextBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseDown
If e.Button = System.Windows.Forms.MouseButtons.Left Then
StartPositon = New Size(e.X, e.Y)
End If
End Sub
Private Sub TextBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseMove
If e.Button = System.Windows.Forms.MouseButtons.Left Then
TextBox1.Location = Point.op_Subtraction(Me.PointToClient(System.Windows.Forms.Cursor.Position), StartPositon)
End If
End Sub
End Class