使用C#实现鼠标进入按键范围后按键自动窗体内位置移动

新建winform窗体程序

添加button控件

在事件中选择 MouseEnter

代码如下

private void button_MouseEnter(object sender, EventArgs e)

{

//给按钮一个新的坐标

//这个按钮活动的最大宽度就是 窗体的宽度减去按钮的宽度

  int x = this.ClientSize.Width - button.Width;
  int y = this.ClientSize.Height - button.Height;
  Random r = new Random();
  button.Location = new Point(r.Next(0, x + 1), r.Next(0, y + 1));
}

时间: 2024-10-07 06:55:50

使用C#实现鼠标进入按键范围后按键自动窗体内位置移动的相关文章

单片机独立按键与矩阵按键

独立按键 首先既然是检测输入,对于当然要使能上拉电阻,来检测变化.因为除了P0口外,P2,P3,P4都是内置上拉电阻的准双向IO口,作为输入前需要拉为高电平. 当有按键按下,致使单片机的某个引脚接地,变为低电平时,我们就认为这个按键按下了.当按键松开后,由于输入不会锁存,所以此时拉高的引脚回归到高电平. 独立按键的内部原理. 独立按键的4个引脚中,两两为一组.每一组的2个引脚是连在一起的,当按键按键时,2个组又连接了,也就是4个脚都连接一起了. 按键的很重要注意点就是消除抖动,消抖.因为人按下按

矩阵按键的组合按键触发

/***12个按键,每一个按键都会让蜂鸣器发出“嘀”的一声, 同时按下S1和S12会点亮一个LED灯,同时按下***/#include "REG52.H"#define const_voice_short 40#define const_key_time 12#define const_key_time_comb 14 //组合按键去抖动延时时间void initial_myself();void initial_peripheral();void delay_long(unsigne

Android 使用动画效果后的控件位置处理 类似系统通知栏下拉动画

Android的动画的使用,请参考.Android的动画,在设计方面,我有点不太理解,觉得这样搞很怪,因为在控件动画后,即使设置了停留在动画结束时的位置,我们也确实看到了控件停在那个位置,但其实该控件的真实位置还是在原来动画前的那里.举个例子,如果有个Button,你给它设置了动画,让它移动到其他位置,当移动完成后,你会发现,点击Button没有任何效果,而在Button原来的位置,就是动画前的位置点击,明明没有任何控件,却看到了点击Button的效果.不知道Google为什么要这样设计.解决思

鼠标悬浮一定时间后显示信息

$(".gridMore").on({"mouseenter":function(){ showMoreInfo(this); },"mouseleave":function(){ hideMoreInfo(this) } }); function showMoreInfo(that){ var x; var y; function getPos(e){ x = e.pageX; y = e.pageY; } document.addEventL

Javascript实现鼠标框选元素后拖拽被框选的元素

之前需要做一个框选元素后拖拽被框选中的元素功能,在网上找资料做了一些修改,基本达到了需要的效果,希望对也需要实现框选后拖拽元素功能的人有用. 页面加载后效果 框选后的内容可以拖拽,如下图: 代码下载

图片逐渐由看不见到模糊,最后清晰显示;鼠标点击图片后,图片依照1、2、3、4顺序依次循环显示;鼠标移入图片区域,图片放大

html<html<head lang="en"<meta charset="UTF-8"<titletitle</head<body<div</div<div<img src="images/1.jpg" alt="" width="192"</div<brbr<div</div<brbrbr<scriptdo

MFC中如何在TreeCtrl控件中获取鼠标左键消息时的有效点击位置

MFC中,当在TreeCtrl控件中添加鼠标左键消息时,就意味着,凡是在该控件中点击左键后即会响应鼠标左键的消息,可有时我们只想记下有效的鼠标左键点击的事件,如图所示: 只想在CheckBox中点击鼠标左键时,将已选中的Item的句柄存入到链表中,那么如何只将有效的鼠标左键的消息存入链表中呢? 下面是响应鼠标左键消息时从所有鼠标左键消息都响应到只响应有效的左键消息的三个版本: 当响应鼠标左键的消息时,第一个版本: 获取鼠标的点击位置(注意:此时获取的是针对于当前屏幕的鼠标点击位置,所以需要将其转

MySql5.6Linux安装后my.cnf配置文件位置

MySql5.6在Linux安装后my.cnf配置文件并不在/etc/下面,而需要从/usr/share/mysql/目录项拷贝一个my-small.cnf文件到/etc/下然后重命名为my.cnf

listview长按后拖动item交换位置的帮助类

抽象类封装,需要在activity中创建帮助类对象并重写交换位置的方法changeItemPosition(数据源中id1,数据源中的id2),和重新显示listview的方法resetListview 关键步骤: 1.listview正常显示后,新建lmxListviewHelper对象并传入listview对象,重写两个抽象方法 2.打开item交换功能--> helper.enableChangeItems(true); 效果,长按某一item后,该条目会变成半透明,此时拖动该item移动