在C#编程中用键盘上的方向键来控制一张图片的移动的代码怎么写? 在C#编程中用键盘上的方向键来控制自己画的物体运动的代码怎么...

\u5728C#\u7f16\u7a0b\u4e2d\u7528\u952e\u76d8\u4e0a\u7684\u65b9\u5411\u952e\u6765\u63a7\u5236\u4e00\u5f20\u56fe\u7247\u7684\u79fb\u52a8\u7684\u4ee3\u7801\u600e\u4e48\u5199\u554a\uff1f\u8981\u7b80\u5355\u5177\u4f53\u7684\uff01\uff01\uff01

\u521a\u505a\u4e86\u4e2a\u7b80\u5355\u7684\uff1a
\u5728Form\u7a97\u4f53\u4e0a\u6dfb\u52a0\u4e00\u4e2aPictureBox1\u63a7\u4ef6
\u6dfb\u52a0Form\u7a97\u4f53\u7684KeyDown\u6d88\u606f\u54cd\u5e94\u51fd\u6570
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Up:
pictureBox1.Top -=5;
break;
case Keys.Down:
pictureBox1.Top += 5;
break;
case Keys.Right:
pictureBox1.Left += 5;
break;
case Keys.Left:
pictureBox1.Left -= 5;
break;
default:
break;
}

}
}
}

\u6709\u4e24\u79cd\u65b9\u5f0f\uff0c\u7b2c\u4e00\u79cd\uff0c\u76f4\u63a5\u628a\u56fe\u753b\u5728Bmp\u4f4d\u56fe\u4e0a\uff0c\u7136\u540e\u7528picturebox \u63a7\u4ef6\u663e\u793a\u51fa\u6765\uff0c\u5728\u7a97\u4f53\u7684key\u4e8b\u4ef6\u5199\u4ee3\u7801\u6539\u53d8\u5750\u6807\u3002
\u7b2c\u4e8c\u79cd\uff0c\u628a\u7ed8\u56fe\u7684\u5199\u6210\u4e00\u4e2a\u65b9\u6cd5\uff0c\u6ca1\u6709\u6309\u4e0b\u952e\u7684\u65f6\u5019\u8c03\u7528\u54ea\u4e2a\u65b9\u6cd5\uff0c\u4f20\u5165x\u548cy\u5750\u6807\uff0c\u6539\u53d8\u4f4d\u7f6e\u3002\u5c31\u53ef\u4ee5\u5b9e\u73b0\u79fb\u52a8\u4e86\u3002

代码如下:

void MainFormKeyDown(object sender, KeyEventArgs e) 

int intDev = 10; 

switch(e.KeyCode) 

case Keys.Left: 

Image1.Left -= intDev; 

break; 

case Keys.Right: 

Image1.Left += intDev; 

break; 

case Keys.Up: 

Image1.Top -= intDev; 

break; 

case Keys.Down: 

Image1.Top += intDev; 

break; 

default: 

break;       

}



刚做了个简单的:

在Form窗体上添加一个PictureBox1控件

添加Form窗体的KeyDown消息响应函数

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace WindowsFormsApplication1

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

        private void Form1_KeyDown(object sender, KeyEventArgs e)

        {

            switch (e.KeyCode)

            {

                case Keys.Up:

                    pictureBox1.Top -=5;

                    break;

                case Keys.Down:

                    pictureBox1.Top += 5;

                    break;

                case Keys.Right:

                    pictureBox1.Left += 5;

                    break;

                case Keys.Left:

                    pictureBox1.Left -= 5;

                    break;

                default:

                    break;

            }

        

        }

    }

}



使用keyDown事件,
if(e.keycode==keys.Left)
{
//如果按下左键,图片的坐标就左移5个像素
pictureBox.Location=new point (pictureBox.Location.X-5,pictureBox.Location.Y);
}

窗体的坐标原点是在窗体的最左上角,往右X轴加,往下Y轴加

首先要实现Form的onKeyDown的事件。
然后在里面这样写:
int dx=10;//以10像素为单位偏移
switch(KeyEvent.KeyCode)
{
case KeyCode.UP:
pictureBox1.Top-=dx;
break;
case KeyCode.Down:
pictureBox1.Top+=dx;
break;
case KeyCode.Left:
pictureBox1.Left-=dx;
break;
case KeyCode.Right:
pictureBox1.Left+=dx;
break;
}
//大致是这个思路。没调试,将就看吧

刚做了个简易的,截图发不了,被度娘吞了,有问题可以hi我
在Form窗体上添加一个PictureBox1控件
添加Form窗体的KeyDown消息响应函数
//form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Up:
pictureBox1.Top -=5;
break;
case Keys.Down:
pictureBox1.Top += 5;
break;
case Keys.Right:
pictureBox1.Left += 5;
break;
case Keys.Left:
pictureBox1.Left -= 5;
break;
default:
break;
}

}
}
}

  • c璇█涓璼tatic璇存槑鏄粈涔堟剰鎬?
    绛旓細鍦–璇█涓紝static鍏抽敭瀛楃殑浣滅敤濡備笅锛1銆佸湪淇グ鍙橀噺鐨勬椂锛宻tatic淇グ鐨勯潤鎬佸眬閮ㄥ彉閲忓彧鎵ц涓娆★紝鑰屼笖寤堕暱浜嗗眬閮ㄥ彉閲忕殑鐢熷懡鍛ㄦ湡锛岀洿鍒扮▼搴忚繍琛岀粨鏉熶互鍚庢墠閲婃斁銆2銆乻tatic淇グ鍏ㄥ眬鍙橀噺鐨勬椂锛岃繖涓叏灞鍙橀噺鍙兘鍦ㄦ湰鏂囦欢涓闂紝涓嶈兘鍦ㄥ叾瀹冩枃浠朵腑璁块棶锛屽嵆渚挎槸extern澶栭儴澹版槑涔熶笉鍙互銆3銆乻tatic淇グ涓涓嚱鏁帮紝鍒欒繖涓...
  • c鍦ㄧ埍鎯呯殑鍚箟鏄粈涔
    绛旓細c鍦ㄧ埍鎯呯殑鍚箟鏄粈涔,鐢ㄥ悇绉嶅悇鏍风殑绗﹀彿鏉ヤ唬鏇挎垜浠兂瑕佽〃杈剧殑鐪熷疄鎰忔濇槸鎴戜滑瀵逛竴浠芥劅鎯呯殑鍚搫琛ㄧず,涓栭棿涓囩墿瀛樺湪鐨勬剰涔夊氨鏄垜浠祴浜堢殑鍐呮兜,涓嬮潰鍒嗕韩c鍦ㄧ埍鎯呯殑鍚箟鏄粈涔堛 c鍦ㄧ埍鎯呯殑鍚箟鏄粈涔1 C鎸囩殑鏄幇鍦ㄦ祦琛岀殑C鍨嬬埍鎯呰銆 C鍨嬬埍鎯呰 鈥淐鍨嬬埍鎯呰鈥濇寚鐨勬槸瀵圭幇浠g埍鎯呭叧涓绉嶆柊鐨勫畾涔夈傚湪鐖辨儏涓,鏈夎繘鏈夐銆...
  • C璇█鏄湪.h涓畾涔夌粨鏋勪綋杩樻槸鍦.c涓畾涔?
    绛旓細缁撴瀯浣撴槸涓绉嶇被鍨嬶紝瀹氫箟涓绉嶇被鍨嬫渶濂芥槸鍦.h瀹氫箟锛岃繖鏍峰叾浠栧湴鏂规兂鐢ㄨ繖涓粨鏋勪綋锛屽彧闇鍖呭惈姝.h鏂囦欢鍗冲彲锛屼絾鏄畾涔夌粨鏋勪綋鍙橀噺鐨勮瘽锛屾渶濂借浇.c鏂囦欢瀹氫箟锛堜负浜嗛槻姝㈤噸澶嶅畾涔夛紝鎵浠ヤ笉寤鸿鍦╟鏂囦欢涓畾涔夊彉閲忥級锛岀劧鍚..h閲岄潰extern澹版槑锛屽叾浠.c鏂囦欢鎯崇敤鍙渶鍖呭惈閭d釜.h鏂囦欢鍗冲彲 ...
  • C璇█闂,鍦ㄤ綅杩愮畻涓,鎿嶄綔鏁版瘡鍙崇Щ涓浣,鍏剁粨鏋滅浉褰撲簬浠涔?鑻ュ乏绉1浣...
    绛旓細鍙崇Щ瀵圭鍙蜂綅鐨勫鐞嗗拰宸︾Щ涓嶅悓锛屽浜庢湁绗﹀彿鏁存暟鏉ヨ锛屾瘮濡俰nt绫诲瀷锛屽彸绉讳細淇濇寔绗﹀彿浣嶄笉鍙橈紝渚嬪锛歩nti=0x80000000锛沬=i>>1锛//i鐨勫间笉浼氬彉鎴0x40000000锛岃屼細鍙樻垚0xc0000000 2銆佸乏绉伙紝涔樹互2宸︾Щn浣嶄箻浠2鐨刵娆℃柟锛涘厛璇村乏绉伙紝宸︾Щ灏辨槸鎶婁竴涓暟鐨勬墍鏈変綅閮藉悜宸︾Щ鍔ㄨ嫢骞蹭綅锛鍦–涓敤<<杩愮畻绗︺
  • c璇█鐨 sleep鍑芥暟鍒板簳鍦ㄥ摢涓ご鏂囦欢閲屽晩
    绛旓細鍦<windows.h>閲岄潰銆傚湪VC涓娇鐢ㄦ椂锛宻leep鍑芥暟鐨勫ご鏂囦欢涓簑indows銆俬锛屽湪Linux涓嬶紝gcc缂栬瘧鍣ㄤ腑锛屼娇鐢ㄧ殑澶存枃浠跺洜gcc鐗堟湰鐨勪笉鍚岃屼笉鍚 鍦╒C涓紝Sleep涓殑绗竴涓嫳鏂囧瓧绗︿负澶у啓鐨"S"锛屽湪linux涓嬩笉瑕佸ぇ鍐欙紝鍦ㄦ爣鍑咰涓槸sleep锛屼笉瑕佸ぇ鍐欙紝绠鍗曠殑璇碫C鐢⊿leep锛屽埆鐨勪竴寰嬩娇鐢╯leep 鍦╒C涓紝Sleep锛堬級閲岄潰鐨...
  • a>b!=c鍦 C璇█涓槸浠涔堟剰鎬
    绛旓細a>b锛=c鐨勬剰鎬濇槸鍏堟嬁a鍜宐杩涜澶у皬鐨勬瘮杈冿紝鐒跺悗鎷垮埌琛ㄨ揪寮廰>b鐨勫间笌c杩涜涓嶇瓑浜庣殑琛ㄨ揪寮忓垽鏂紝鐒跺悗寰楀嚭琛ㄨ揪寮忕殑缁撴灉銆備緥濡傦細褰揳=2锛宐=1锛宑=1銆傚垯璇彞鐨勬墽琛岃繃绋嬩负锛氬厛鎵цa>b锛屽洜涓篴=2锛宐=1锛屾墍浠>b杞寲涓2>1锛屾墽琛岀殑缁撴灉涓1锛屽洜涓鍦–璇█闈0鍗充负1銆傜劧鍚庡垽鏂1锛=1锛屽洜涓1=1锛屾墍浠ヨ...
  • C缂栫▼涓璿oid鍒板簳鏄粈涔堟剰鎬濆晩?鍦ㄤ粈涔堟儏鍐典笅鐢ㄨ繖涓?
    绛旓細鎰忔濇槸鈥滄棤绫诲瀷鈥濄傚父鐢ㄥ湪绋嬪簭缂栧啓涓瀹氫箟鍑芥暟鐨勫弬鏁扮被鍨嬨佽繑鍥炲笺佸嚱鏁颁腑鎸囬拡绫诲瀷杩涜澹版槑銆倂oid 鐨勪綔鐢細瀵瑰嚱鏁拌繑鍥炵殑闄愬畾锛岃繖绉嶆儏鍐垫垜浠瘮杈冨父瑙併傚鍑芥暟鍙傛暟鐨勯檺瀹氾紝杩欑鎯呭喌涔熸槸姣旇緝甯歌鐨勩備竴鑸父瑙佺殑灏辨槸杩欎袱绉嶆儏鍐碉細1銆佸綋鍑芥暟涓嶉渶瑕佽繑鍥炲煎兼椂锛屽繀椤讳娇鐢╲oid闄愬畾锛岃繖灏辨槸鎴戜滑鎵璇寸殑绗竴绉嶆儏鍐点
  • c鍦ㄨ溅鐗岄噷浠h〃浠涔堟剰鎬 c鐨勫悏绁ュ瘬鎰忔槸浠涔?
    绛旓細鎴戜滑鐨勮溅鐗屽彿閮芥槸鐢辨暟瀛楀拰瀛楁瘝缁勬垚鐨勶紝姣忎釜鍦板尯鐨勪笉鍚岄兘浼氱敱灞炰簬鍩庡競鍦版爣鐨勫瓧姣嶏紝鑰岃溅鐗屽彿涔熷彲浠ヨ鏄竴涓汉鐨勮韩浠藉彿锛屼篃鏄唬琛ㄤ簡涓涓煄甯傦紝鎵浠ユ瘡涓煄甯傞兘浼氱敱灞炰簬鑷繁鐨勬爣蹇楋紝閭d箞瀵逛簬C鍦ㄨ溅鐗岄噷浠h〃鐨勬椂浠涔堟剰鎬濆憿锛c鍦ㄨ溅鐗岄噷浠h〃浠涔堟剰鎬濇垜浠兘鐭ラ亾杞︾墝鍙风殑绗竴涓瓧鏄煄甯傜殑缂╁啓锛屼唬琛ㄤ簡涓涓煄甯傦紝濡...
  • C璇█鐨勫簱鍑芥暟鏀惧湪浠涔堝湴鏂(鍦ㄤ粈涔堢洰褰曢噷)?
    绛旓細C璇█鐨勫簱鍑芥暟鍦↙IB鐩綍閲岄潰銆傚簱鍑芥暟鏄皢鍑芥暟灏佽鍏ュ簱锛屼緵鐢ㄦ埛浣跨敤鐨勪竴绉嶆柟寮忋傛柟娉曟槸鎶婁竴浜涘父鐢ㄥ埌鐨勫嚱鏁扮紪瀹屾斁鍒颁竴涓枃浠堕噷锛屼緵涓嶅悓鐨勪汉杩涜璋冪敤銆傝皟鐢ㄧ殑鏃跺欐妸瀹冩墍鍦ㄧ殑鏂囦欢鍚嶇敤#include<>鍔犲埌閲岄潰灏卞彲浠ヤ簡銆備竴鑸槸鏀惧埌lib鏂囦欢閲岀殑銆
  • c璇█鏁扮粍鍦ㄥ唴瀛樹腑鏄庝箞鍒嗛厤鐨?
    绛旓細C璇█浣跨敤鐨勫唴瀛樻槸铏氭嫙鍐呭瓨銆傛寜鐓у姛鑳界殑涓嶅悓鍦–璇█涓張灏嗚櫄鎷熷唴瀛樹负鍒嗕笁绫伙細鏍堝尯銆佸爢鍖恒侀潤鎬佹暟鎹尯锛屼笉绠℃槸鍗曚竴鍙橀噺杩樻槸鏁扮粍锛屽叾鍐呭瓨鍒嗛厤閮芥槸杩欐牱鍒嗙殑銆傚湪鏍堝尯銆侀潤鎬佹暟鎹尯銆佸爢鍖轰細鏈夌紪璇戝櫒璐熻矗鍒嗛厤銆佹搷浣滅郴缁熻礋璐g鐞嗭紝绋嬪簭鍛樺彲浠ュ湪鍫嗗尯浣跨敤malloc()鏉ュ姩鎬佸垎閰嶅爢鍐呭瓨鐨勯棶棰樸
  • 扩展阅读:电脑键盘θ在哪里 ... c#常见面试题 ... c++编程 ... c#编程软件叫什么 ... 电脑键盘新手入门教程 ... 键盘锁住了fn和什么键 ... c和c#和c++区别 ... c#与c语言的区别 ... c#编程软件手机版 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网