请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

hiliuyong

初级会员

37

主题

61

帖子

270

积分

初级会员

积分
270
hiliuyong
初级会员   /  发表于:2021-9-13 17:34  /   查看:1558  /  回复:1
我希望程序发布后,用户可以在界面上拖动这些控件的位置,
C1控件能不能设置,或者用什么方案可以解决

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

1 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-9-14 09:27:23
沙发
目前Winforms控件一般都没办法拖动,C1这些输入控件也不支持

拖动功能目前只能是二次开发来实现,按照你这边的界面,应该是需要标签和输入框一起拖动
可以对标签设置可以拖动,将标签对应的输入框设置为标签的tag,然后可以参考下面的代码

  1.         private Point mouseOffset;
  2.         bool isMouseDown = false;
  3.         private void label1_MouseDown(object sender, MouseEventArgs e)
  4.         {
  5.             if (e.Button == MouseButtons.Left)
  6.             {
  7.                 mouseOffset.X = e.X;
  8.                 mouseOffset.Y = e.Y;
  9.                 isMouseDown = true;
  10.             }
  11.         }

  12.         private void label1_MouseMove(object sender, MouseEventArgs e)
  13.         {
  14.             if (isMouseDown)
  15.             {
  16.                 label1.Location = new Point(label1.Left + e.X - mouseOffset.X, label1.Top + e.Y - mouseOffset.Y);
  17.                 var ctl = label1.Tag as Control;
  18.                 ctl.Location = new Point(ctl.Left + e.X - mouseOffset.X, ctl.Top + e.Y - mouseOffset.Y);
  19.             }
  20.         }

  21.         private void label1_MouseUp(object sender, MouseEventArgs e)
  22.         {
  23.             if (e.Button == MouseButtons.Left)
  24.             {
  25.                 isMouseDown = false;
  26.             }
  27.         }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部