c#中, 如何动态移动控件位置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#中, 如何动态移动控件位置相关的知识,希望对你有一定的参考价值。
在程序运行后,如何动态移动控件的位置?
参考技术A 控件有个属性(static/Dynamic?),设置D,如果想动态移动位置,那肯定得有个动态变量,这个值应该根据空间的大小来确定,这只是思路,具体还得靠你自己。 参考技术B C#中,各个控件的位置一般都是由Top和Left属性控制的,你在代码中需要移动位置的地方改变这两个选项就好了。 参考技术C 我也给你提供个方法:Label1.Left+=50;
这段代码每执行一次,控件就会向右移动50个像素;向左就,减就行了
向下移动:
Label1.Top+=50; 参考技术D 刚做的一个简单demo。
public bool ismove = false;
public bool bigorsmall = true;
public Point poi;
public Form1()
InitializeComponent();
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
ismove = true;
poi.X = Cursor.Position.X - pictureBox1.Left;
poi.Y = Cursor.Position.Y - pictureBox1.Top;
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
if (ismove)
pictureBox1.Left = Cursor.Position.X - poi.X;
pictureBox1.Top = Cursor.Position.Y - poi.Y;
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
ismove = false;
第5个回答 推荐于2016-07-30 this.button1.Location = new System.Drawing.Point(x, y);
动态设置x,y本回答被提问者采纳
如何在Relativelayout中动态设置控件位置
参考技术A 用LayoutParams:RelativeLayout insertLayout = (RelativeLayout)view1.findViewById(R.id.screen);//screen是一个RelativeLayout 布局的id
ImageView imgApple2 = new ImageView(MainActivity.this);
imgApple2.setBackgroundColor(Color.parseColor("#ffb6b4"));
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(100, 100);
layoutParams.topMargin=8;
layoutParams.leftMargin=8;
layoutParams.rightMargin=8;
layoutParams.bottomMargin=8;
insertLayout.addView(imgApple2,layoutParams);本回答被提问者采纳
以上是关于c#中, 如何动态移动控件位置的主要内容,如果未能解决你的问题,请参考以下文章
c# winform groupbox上动态生成的控件,如何让控件随着分辨率变化而自动调整位置和大小
c# winform groupbox上动态生成的控件,如何让控件随着分辨率变化而自动调整位置和大小
Windows 窗体应用程序 C# - 在调试模式下运行后选项卡控件项移动位置