
No.1ベストアンサー
- 回答日時:
フォームがコンテナでいいのでしょうか?
ピクチャーボックスのMouseDownイベントでDragを開始するフラグをセットして DoDragDropメソッドを使います
Form側のDragEnter,DragLeaveやDragDropイベントを記述してピクチャーボックスの移動を実行します
フォームレベルの変数として
Dim bDrag as Boolean, pt as Point
を準備します
ピクチャーボックスのMouseDownイベントで
if bDrag = false then
bflag = true
PictureBox1.DoDragDrop( PicturBox1, DragDropEffects.Copy)
pt = e.Location
Form1.AllowDrop = true
end if
といった具合にして D&Dを開始します
フォームのDragEnterイベントで
if e.Data.GetDataPresent( GetType( PictureBox ) ) then
e.Effect = DragDropEffects.Copy
End if
といった具合に D&Dの属性を設定します
フォームの外へ移動してしまった場合に フラグをリセットするために
DragLeaveイベントを使います
bDrag = False
ドロップされたら その位置にピクチャーボックスを移動する処理は
フォームの DragDropイベントに記述します
dim p as New Point( e.X, e.Y )
' 引数の座標はスクリーン座標でくるので
' Formのクライアント座標に変換します
p = Me.PointToClient( p )
' ピクチャーボックス内の何処をクリックされていたのかを
' ptに記憶してあるのでこれを加算します
p.Offset( -pt.X, -pt.Y )
PictureBox1.Location = p
bDrag = false
といった具合で D&D出来ると思いますよ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
グラフの交点の求め方(Excel)
-
3次元空間上の2つの座標から...
-
始点、終点の二つの座標と半径...
-
エクセルで回転する座標の出し方
-
VBで、開いているExcelシートの...
-
回転する矩形同士の当たり判定...
-
DirectXを使ってテクスチャ(画...
-
任意軸回転を、XYZ軸回転の...
-
マインクラフト(pc版)で座標...
-
複数コントロール(ラベル)を...
-
ASP.NET フォーム上でp...
-
複数の回転する長方形の衝突判定
-
Tiny Basicでのグラフィック。。
-
VB2010 直線の回転
-
空間上の二点を結ぶ直線上に任...
-
3D座標上のベクトルをを2D平...
-
objective-c 画像の反転と回転
-
カメラの回転行列R(3*3),並進ベ...
-
3次元座標上の2直線の交点判...
-
VB6→VS2005アップグレード後
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
グラフの交点の求め方(Excel)
-
マインクラフト(pc版)で座標...
-
3次元空間上の2つの座標から...
-
シーケンサー(PLC?)で制...
-
ダイアログ内コントロールの位...
-
エクセルで回転する座標の出し方
-
ワード上Shapeの位置情報を統一...
-
Excel VBA で自在に図形を変化...
-
始点、終点の二つの座標と半径...
-
C言語で制作するピラミッドアー...
-
C言語 配列で座標
-
閉図形の座標の配列が右回りか...
-
ガウシアンフィルタのCプログラム
-
任意点を中心とした回転
-
c言語でキーボードから2点の座...
-
求積表の計算方法
-
3D→2Dの座標変換で、スクリーン...
-
以下のプログラムは重心を求め...
-
変数名のこだわりについて
-
複数の回転する長方形の衝突判定
おすすめ情報