如何在c#中实现单击一个按钮后,再在窗体内点击一次鼠标,把该按钮移动到第二次点击的位置? 20

rt,新手求教。privatevoidbutton1_Click(objectsender,EventArgse){//如何添加一次单击触发的事件?}... rt,新手求教。
private void button1_Click(object sender, EventArgs e)
{
//如何添加一次单击触发的事件?

}
展开
 我来答
帐号已注销
推荐于2017-12-16 · TA获得超过1134个赞
知道小有建树答主
回答量:742
采纳率:73%
帮助的人:424万
展开全部
楼上说的可以
具体点,在你的class From1中,构造函数上面加一个
bool isClick=false;
在button1_Click函数中
isClick=true;
为窗体添加一个Click响应消息
在From1_Click函数中
if(isClick)
{
button1.Location=new Point(e.X-button1.Size.Width/2,e.Y-button1.Size.Height/2);
isClick=false;
}
追问
方法可行,但是我实际上想继承一个带有这个功能的button怎么写?
追答
那样也行啊   就是在继承的类中加一个移动的方法,最终还是要在窗体的单击函数中调用这个方法,毕竟你点的是窗体,无法引起按钮的任何消息响应,只能引起窗体的单击消息
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jimy1
2015-05-04 · TA获得超过814个赞
知道小有建树答主
回答量:426
采纳率:100%
帮助的人:234万
展开全部
定义一个全局变量isClick=false
button1_Click里isClick=true
form_Click里
if isClick=true
按钮设置新位置
isClick=false
追问
方法可行,但是我实际上想继承一个带有这个功能的button怎么写?这种方法不行。
追答
你的要求是点击窗体,按钮移动到点击的位置,这涉及到窗体和点击的位置
光靠button自身的属性是无法实现的

你可以继承一个button类,里面增加一个移动到新位置的方法
当点击form的时候调用这个方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-05-04
展开全部
winform中还是asp.net中?
追问
windows form
追答
public partial class Form1 : Form
    {

        /// <summary>
        /// 是否可移动
        /// </summary>
        private Boolean IsMove = false;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_MouseClick(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right || e.Button == MouseButtons.Left)
            {
                Point p = MousePosition;//获取位置
                //其他需要执行的代码
                if (IsMove)
                {
                    this.button1.Location = p;    
                }
                
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            IsMove = true;
        }
    }

找到窗体的MouseClick事件,双击,在这个事件下,下 button移动的代码!

已试过,试的时候,请将窗体最大化!

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式