怎么在C# Timer中监视输入 Key_down

jimson_ma 2010-04-16 05:39:54
最近写了个程序是关于图像移动的。 就是让图像每秒移动一下, 通过键盘改变方向值。是通过重载Onpaint实现描绘的。

但设置了timer 但是触发不了 Key_down方法 郁闷阿。那位朋友可以帮忙看下,或给个例子。可以直接发我邮箱20045912@163.com

下面是关于timer的方法。

System.Timers.Timer tt = new System.Timers.Timer(1000);

private void btnStart_Click(object sender, EventArgs e)
{
BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += new DoWorkEventHandler(bw_DoWork);
bw.RunWorkerAsync();

//new Thread().Start();

}

public void bw_DoWork(object sender, DoWorkEventArgs e)
{
tt.Elapsed += new System.Timers.ElapsedEventHandler(timerun);

tt.AutoReset = true;

tt.Enabled = true;
}

public void timerun(object obj, System.Timers.ElapsedEventArgs e)
{
MoveLong();
}
...全文
200 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
mayarenlcs 2010-04-20
  • 打赏
  • 举报
回复
顶下~~~
shiweijian1986 2010-04-20
  • 打赏
  • 举报
回复
貌似 事件只能服务代码触发
shiweijian1986 2010-04-20
  • 打赏
  • 举报
回复
DLLimport keybd_event 这个winapi函数
hongqun369 2010-04-20
  • 打赏
  • 举报
回复
不知所云~~~
jimson_ma 2010-04-20
  • 打赏
  • 举报
回复
System.Timers.Timer
ystem.Window.Form.Timer 两个我都用过啊。不行的。就是触发不了Key_down事件,所以不能修改方向变量。
yyh673040759 2010-04-17
  • 打赏
  • 举报
回复
如果代码没有问题的话
那么是不是你的时间控件没有启用啊
看一下Timer属性中的状态
hanbaochang 2010-04-16
  • 打赏
  • 举报
回复
System.Timers.Timer
ystem.Window.Form.Timer
有什么区别?
andyhu11 2010-04-16
  • 打赏
  • 举报
回复
路过看看......
hzxsasdfgh 2010-04-16
  • 打赏
  • 举报
回复
最近写了个程序是关于图像移动的。 就是让图像每秒移动一下, 通过键盘改变方向值。是通过重载Onpaint实现描绘的。
不用timer吧!

1:while(true)
{
程序运行ing
}

2:递归
3:或者自己写个委托!
andybang1981 2010-04-16
  • 打赏
  • 举报
回复
在MoveLong(); 方法中有打开TT吗?即TT.START()与TT.STOP(),因为你画图时所用时间一般大于
1秒吧,最好是这样使用,画完一次再开启定时器
zsuswy 2010-04-16
  • 打赏
  • 举报
回复
为什么要在Timer中去做?????????????
ff167 2010-04-16
  • 打赏
  • 举报
回复
你的keydown事件里去控制一个全局变量

然后 MoveLong(); 里去读取这个变量不就可以了。

注意线程安全性。
皇城龙三 2010-04-16
  • 打赏
  • 举报
回复
也就是说不要用System.Timers.Timer,应该用System.Window.Form.Timer
namdamlu 2010-04-16
  • 打赏
  • 举报
回复
学习.....
影子_爱人 2010-04-16
  • 打赏
  • 举报
回复
路过 看看
皇城龙三 2010-04-16
  • 打赏
  • 举报
回复
不能用工具栏->windows窗体->Timer
要用工具栏->组件->Timer
内容概要:本文围绕可变桨叶四旋翼无人机的规范控制与点对点运动模拟展开,重点研究优化推力分配策略在翻转动作的应用与性能比较。通过Matlab代码实现,构建了四旋翼动力学模型,并设计了多种控制算法以实现精确的姿态调整与轨迹跟踪。研究对比了不同推力分配方案在执行高机动性翻转动作时的稳定性、能耗效率与响应速度,旨在提升无人机在复杂飞行任务的动态性能与控制精度。该仿真研究为无人机飞控系统的设计与优化提供了理论依据和技术支持。; 适合人群:具备一定自动控制理论基础和Matlab编程能力,从事无人机控制、飞行器动力学或机器人系统研究的科研人员及研究生。; 使用场景及目标:① 实现四旋翼无人机在三维空间的精确点对点运动控制;② 对比分析不同推力分配策略在执行翻转等高难度动作时的控制效果与能耗表现,优化飞行性能;③ 为无人机自主飞行、特技飞行及复杂环境下的机动控制提供算法验证平台。; 阅读建议:此资源以Matlab仿真为核心,建议读者结合相关控制理论知识,深入理解代码实现细节,重点关注动力学建模、控制律设计与推力分配模块。在学习过程,应动手调试参数,复现文翻转动作的仿真结果,并尝试拓展至其他复杂飞行任务,以加深对无人机控制机理的理解。

111,132

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧