DOBON.NET DOBON.NETプログラミング掲示板過去ログ

コントロールの移動と再配置

環境/言語:[Windows 7、C#、.NET Framework 4.0]
分類:[.NET]

Windowsのフォーム上で
コントロールをドラック&ドロップによって
移動と再配置を行いたいのですが

言葉では説明が難しいのですが

やりたいことはWeb上で出来ている
これと同じことをやりたいのです
http://gridster.net/


同じようなことが出来る
コンポーネント(コントロール)とかないでしょうか?
■No32073に返信(てんてんさんの記事)

VB.NETですが以下のような感じでどうでしょう?
コントロールがForm上に直接配置されているなら大丈夫だと思います。
階層があるなら工夫が必要かと思います。

Private _movemode As Boolean = False
Private _startpt As Point
Private Sub Label1_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Label1.MouseDown
_movemode = True
_startpt = e.Location
End Sub

Private Sub Label1_MouseMove(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Label1.MouseMove
If Not _movemode Then Exit Sub
Dim curpt = Me.PointToClient(Label1.PointToScreen(e.Location))
Label1.Location = New Point(curpt.X - _startpt.X, curpt.Y - _startpt.Y)
End Sub

Private Sub Label1_MouseUp(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles Label1.MouseUp
_movemode = False
End Sub
■No32074に返信(shuさんの記事)
> ■No32073に返信(てんてんさんの記事)
>
> VB.NETですが以下のような感じでどうでしょう?
> コントロールがForm上に直接配置されているなら大丈夫だと思います。
> 階層があるなら工夫が必要かと思います。

shuさんありがとうございます

私の説明が下手で
お手数おかけして申し訳ございません


コントロールに移動は出来るのですが

サンプルのように他のコントロールの
間に割り込ませたりしたいんです


この投稿した後もいろいろ調べていると
FlowLayoutPanelを使えば
実現できそうな気がしてきましたが
まだ調査中
FlowLayoutPanelを使えば
実現できそうです

ありがとうございました
http://dobon.net/vb/dotnet/control/flbeginning.html
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板