求助!!!socket传输mouseevent和keyevent,结果mouseevent可以传过去,keyevent传不过去,什么鬼啊???

求助!!!socket传输mouseevent和keyevent,结果mouseevent可以传过去,keyevent传不过去,什么鬼啊???
异常:
java.io.NotSerializableException: java.io.ObjectOutputStream

代码:
public void keyPressed(KeyEvent e) {
sendEventObject(e);
}

public void sendEventObject(InputEvent event){
    try {
        o.writeObject(event);
        o.flush();
    } catch (IOException e1) {
        e1.printStackTrace();
    }
}

3个回答

很明显这是未实现序列化接口,可能keyevent没有实现,而mouseevent实现了,还有可能keyevent里的字段对象有的未实现序列化接口,你可以自己定义一个实现序列化接口的类把keyevent里你想要的数据进行封装再发送

老哥!你解决了吗!我也出现和你一样的问题!鼠标事件没有问题,但是键盘事件按下后出现异常 writing aborted; java.io.NotSerializableException: java.io.ObjectOutputStream, 谢谢!

qq_41823866
qq_41823866 回复我有两只兔子: 老哥,你的键盘可以实现了吗,
大约一年之前 回复
xuanniao_cd
我有两只兔子 回复qq_41823866: 自定义dto数据传输对象,将需要发送的数据封装,然后实现序列化接口,这样可以避免发送inputevent事件,已完成!
大约一年之前 回复
qq_41823866
qq_41823866 回复我有两只兔子: 没有,他们说键盘事件要单独写出来,但是我试了还是不行
大约一年之前 回复
xuanniao_cd
我有两只兔子 老哥解决了这个问题了吗?我也是一样的问题。
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
我想实现一个五子棋棋盘,但现在无法做到点击鼠标就可以落子!求助!

package frame; import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.Event; import java.awt.FlowLayout; import java.awt.Frame; import java.awt.Graphics; import java.awt.GridLayout; import java.awt.Paint; import java.awt.Panel; import java.awt.Point; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.util.ArrayList; import java.util.Iterator; public class WuFrame { public static void main(String[] args) { new MyFrame().launchFrame(); } } class MyFrame extends Frame{ ArrayList<Point> pointsArrayList=null; public void launchFrame() { // TODO Auto-generated constructor stub setLayout(new BorderLayout()); setSize(700, 700); Panel panelLeft=new Panel(); panelLeft.setBackground(Color.WHITE); Button button=new Button("Start"); panelLeft.add(button); add(panelLeft, BorderLayout.WEST); PanelRight panelRight=new PanelRight(); panelRight.setBackground(Color.WHITE); add(panelRight); setVisible(true); this.addMouseListener( new MouseMonitor()); } public void addPoint(Point point) { pointsArrayList.add(point); } class PanelRight extends Panel{ /** * 把一个frame分成左右两个panel,右边的panel有paint方法,可以用来画出一个15*15的表格以及反应鼠标的点击事件 */ private Graphics graphics=this.getGraphics(); public void paint(Graphics g) { Color color=g.getColor(); Point squarelocation=new Point(0,0); g.setColor(Color.BLACK); //g.drawRect(squarelocation.x, squarelocation.y, 40, 40); for(int i=0;i<14;i++){ for (int j = 0; j <14; j++) { g.drawRect(squarelocation.x+i*40, squarelocation.y+j*40, 40, 40); } } } } class MouseMonitor extends MouseAdapter{ public void MousePressed(MouseEvent event) { MyFrame frame=(MyFrame)event.getSource(); frame.addPoint(new Point(event.getX(),event.getY())); frame.repaint(); PanelRight panelRight=new PanelRight(); panelRight.graphics.setColor(Color.black); panelRight.graphics.fillOval(event.getX(), event.getY(), 20, 20); } } }

关于java中mouseevent的问题

我想问一下为什么我在jframe中点击一下了之后,图片并没有出现呢?还有就是如果我想实现鼠标拖动jlabel该怎么实现呢? package action10; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JLabel; import javax.swing.ImageIcon; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.Point; /**  *  * @author 11417  */ public class Action10 extends JFrame implements MouseListener{     JLabel jb=new JLabel();     JPanel jp=new JPanel();     public Action10(){         this.addMouseListener(this);         this.setLayout(null);         this.setSize(600,600);         this.setVisible(true);         jp.addMouseListener(this);     }          public void mouseClicked(MouseEvent e){         ImageIcon img=new ImageIcon("D:/Procedure/Java/Action10/cmcc.png");         jb.setIcon(img);         int i=e.getX();         int j=e.getY();         jp.add(jb);         this.add(jp);         jp.setSize(100,100);         jp.setLocation(i-50,j-50);     }      public void mouseDragged(MouseEvent e){         if(e.getSource()==jb){              Point point = jb.getLocation();              jb.setLocation(e.getPoint().x + point.x, e.getPoint().y + point.y);         }     }     public void mouseExited(MouseEvent e){}     public void mouseEntered(MouseEvent e){}     public void mouseReleased(MouseEvent e){}     public void mousePressed(MouseEvent e){         ImageIcon img=new ImageIcon("D:/Procedure/Java/Action10/cmcc.png");         jb.setIcon(img);         int i=e.getX();         int j=e.getY();         jp.add(jb);         this.add(jp);         jp.setSize(100,100);         jp.setLocation(i-50,j-50);     }     /**      * @param args the command line arguments      */     public static void main(String[] args) {         // TODO code application logic here         new Action10();     }      }

请问keyEvent cannot be resolved to a type 怎么解决?

这是我写了一半的贪吃蛇代码,但是我却无法解决键盘事件的一个问题。这些代码是我照着参考书的键盘事件写的。请问我的代码出现了什么问题? 问题: Exception in thread "main" java.lang.Error: Unresolved compilation problems: The method addKeyListener(KeyListener) in the type Component is not applicable for the arguments (new PythonGame_Java.KeyListener(){}) The type new PythonGame_Java.KeyListener(){} must implement the inherited abstract method PythonGame_Java.KeyListener.keyPressed(keyEvent) keyEvent cannot be resolved to a type The method game(Graphics) in the type DrawPanel is not applicable for the arguments () at 挑战Java编贪吃蛇.PythonGame_Java.main(PythonGame_Java.java:30) 代码如下: ``` package 挑战Java编贪吃蛇; import java.awt.*; import java.awt.event.KeyEvent; import java.util.EventListener; import javax.swing.*; import java.io.*; public class PythonGame_Java extends JFrame{ //蟒蛇游戏(贪吃蛇) Java语言 (我之前用Python编了类似的程序) public PythonGame_Java(){ //<init> super(); init(); } public interface KeyListener extends EventListener{ public void keyPressed(keyEvent e); } public void init(){ this.setSize(900,600); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setContentPane(new DrawPanel()); this.setTitle("Java贪吃蛇"); setResizable(false); setVisible(true); } public static void main(String[] args) throws InterruptedException { PythonGame_Java Game = new PythonGame_Java(); JTextArea textArea = new JTextArea(); textArea.addKeyListener(new KeyListener() { public void keyPressed(keyEvent e){ String keyTest=KeyEvent.getKeyText(e.getKeyCode()); System.out.println(keyTest); } }); class DrawPanel extends JPanel{ //蛇身宽度=10 private boolean started=true; private final int wait_time=300; private int snake[][]=new int[10000][2]; private int length=0; private int currx=0; private int curry=0; private int BonusX=10; private int BonusY=10; private int loopnum=0; private String snake_dir="right"; public void main(String[] args){ game(); } public void game(Graphics g) throws InterruptedException{ snake[0][0]=0; snake[0][1]=0; while(started==true){ g.setColor(Color.WHITE); g.fillRect(0,0,900,600); g.setColor(Color.BLUE); for(int i=0;i<=length;i++) g.fillRect(snake[i][0]*10,snake[i][1]*10,10,10); switch(snake_dir){ case "left": currx--; case "right": currx++; case "up": curry--; case "down": curry++; } if(currx<0) currx=0; if(curry<0) curry=0; if(currx>90) currx=90; if(curry>60) curry=60; snake[loopnum][0]=currx; snake[loopnum][1]=curry; loopnum++; if(loopnum>length) loopnum=0; if(currx==BonusX && curry==BonusY){ length++; BonusX=(int)(Math.random())*91; BonusY=(int)(Math.random())*61; } Thread.sleep(wait_time); } //游戏循环结束 } //游戏函数结束 } //子类结束 }} //父类结束? ```

关于MouseEvent类型强转问题。

![![图片说明](https://img-ask.csdn.net/upload/201709/20/1505887922_840305.png)图片说明](https://img-ask.csdn.net/upload/201709/20/1505887915_858623.png) 图中e.getSource()不是获取了一个点的对象吗?为什么可以强转为fame容器对象?

奇怪,为何我在文本框添加的键盘适配器不起作用?其他适配器都可以!

import java.awt.*; import java.awt.event.*; class MouseAndKey { private Frame frame; private Button but; private TextField tf; MouseAndKey(){ init(); } public void init(){//初始化对象 frame=new Frame("javatest.exe"); frame.setBounds(400,400,500,400); frame.setLayout(new FlowLayout()); but=new Button("测试按钮"); tf=new TextField(10); frame.add(but); frame.add(tf); frame.setVisible(true); myEvent(); } public void myEvent(){ tf.addKeyListener(new KeyAdapter(){//给文本框加入键盘监视器 public void KeyPressed(KeyEvent e){ int code=e.getKeyCode(); if(!(code>=KeyEvent.VK_0 && code<=KeyEvent.VK_9)){ System.out.println(KeyEvent.getKeyText(code)+":非法字符"); e.consume(); } } }); frame.addWindowListener(new WindowAdapter(){//给窗体加入窗体适配器 public void windowClosing(WindowEvent e){ System.out.println("窗体动作,关闭窗体"); System.exit(0); } }); but.addActionListener(new ActionListener(){//给按钮加入活动监视器 public void actionPerformed(ActionEvent e){ System.out.println("按钮动作!"); } }); but.addMouseListener(new MouseAdapter(){//给按钮加入鼠标适配器 public void mouseClicked(MouseEvent me){ if(me.getClickCount()==2){ System.out.println("双标事件,双击两次退出窗口"); System.exit(0); } System.out.println("鼠标事件,单击了一次"); } public void mouseEntered(MouseEvent me){ System.out.println("鼠标事件,鼠标进入"); } }); but.addKeyListener(new KeyAdapter(){//给按钮加入键盘适配器 public void keyPressed(KeyEvent e){ System.out.println("键盘动作,键盘按下"); } }); } public static void main(String[] args) { new MouseAndKey(); System.out.println("Hello World!"); } }

Java小白求救啊!!!

package com.shuai.plane; import java.awt.Color; import java.awt.Graphics; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.image.BufferedImage; import java.lang.ref.PhantomReference; import java.util.ArrayList; import java.util.List; import javax.swing.JPanel; //JAVA中游戏面板:JPanel /* * 自定义游戏面板 * 1.写一个类继承JPanel * 2.创建构造方法,初始化游戏面板的属性 * * 画图的步骤 * 1.在类中定义图片,并取名 * 2.在构造方法中调用工具类(Photo)初始化图片 * 3.在画图方法paint中,画图片(paint是专门的画图方法) * */ public class GamePanel extends JPanel{ //创建一个集合,用来存放敌机(敌机的大本营) List<EnemyPlane> arrays = new ArrayList<>(); //创建一个集合,用来放英雄机的弹药 List<HeroFire> HFire = new ArrayList<>(); //创建一个集合,用来放敌机的弹药 List<EnemyFire> EnFire = new ArrayList<>(); //创建英雄机的对象 HeroPlane heroPlane = new HeroPlane(); //创建敌机的对象 EnemyPlane enemyPlane = new EnemyPlane(); //写一个线程,让程序跑起来 //写一个方法,启动线程 public void action() { new Thread() { public void run() { //定义一个变量控制敌机出现的数量 int a = 0; int b = 20; //写一个死循环,让程序一直运行 while(true) { //让敌机出现在面板上 if(a == b) { MakeEP(); a = 0; } //让敌机移动 epMove(); //让英雄机子弹出现在面板上 if(a == 0) { MakeHeroFire(); } //让英雄机的子弹动起来 HeroFireMove(); //让敌机的子弹出现在面板上 //MakeEnemyFire(); //让敌机的子弹动起来 //EnemyFireMove(); //重绘布局(刷新页面) repaint(); try { this.sleep(30); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } a++; } } }.start(); } //写一个方法,让敌机移动 public void epMove() { for(int i = 0; i < arrays.size(); i++) { EnemyPlane enemyPlane = arrays.get(i); enemyPlane.y += 10; if(enemyPlane.y > 800) { arrays.remove(enemyPlane); } //EnemyFire enemyFire = EnFire.get(i); //enemyFire.y += 15; } } //写一个方法,用来生产敌机,并把它放进集合中 void MakeEP() { //创建敌机 EnemyPlane enemyPlane = new EnemyPlane(); //创建敌机的子弹 //EnemyFire enemyFire = new EnemyFire(enemyPlane.x, enemyPlane.y); //把敌机加到大本营中(集合) arrays.add(enemyPlane); //EnFire.add(enemyFire); } //写一个方法,生产英雄机的弹药,并把它放进英雄机的弹药库 void MakeHeroFire() { for(int i = 0; i < arrays.size(); i++) { HeroFire heroFire = new HeroFire(heroPlane.x + 15, heroPlane.y, 0); HFire.add(heroFire); HeroFire heroFire2 = new HeroFire(heroPlane.x + 78, heroPlane.y, 2); HFire.add(heroFire2); HeroFire heroFire3 = new HeroFire(heroPlane.x + 48, heroPlane.y - 20, 1); HFire.add(heroFire3); } } //写一个方法让英雄机子弹移动 public void HeroFireMove() { for(int i = 0; i < HFire.size(); i++) { HeroFire heroFire = HFire.get(i); if(heroFire.dir == 0) { heroFire.x -= 1; } if(heroFire.dir == 2) { heroFire.x += 1; } heroFire.y -= 10; // if(heroFire.y < -heroFire.h) { // HFire.remove(heroFire); // } } } //写一个方法生产敌机的弹药,并放进敌机的弹药库 void MakeEnemyFire() { EnemyFire enemyFire = new EnemyFire(enemyPlane.x, enemyPlane.y); EnFire.add(enemyFire); } //让敌机的子弹动起来 void EnemyFireMove() { for(int i = 0; i < EnFire.size(); i++) { EnFire.get(i).y += 15; } } //定义背景图 BufferedImage bgp; //创建构造方法,初始化面板 public GamePanel(GameFrame gameFrame) { //设置面板的背景 //setBackground(Color.cyan); //通过工具类(Photo)获取图片 bgp = Photo.getImage("/Img/bg1.jpg"); /* * 使用鼠标监听器(固定格式) */ //1.创建鼠标适配器 //这是一个匿名内部类 MouseAdapter adapter = new MouseAdapter() { //2.确定需要的鼠标监听事件 /* * 鼠标监听事件: * 1.mouseMoved();监听鼠标移动事件 * 2.mouseCliked();监听鼠标单击事件(鼠标按下后松开才会被监听,按下不会被监听) * 3.mousePressed();监听鼠标按下去的事件(只要鼠标按下就会被监听) * 4.mouseEntered();监听鼠标移入游戏界面的事件 * 5.mouseExited();监听鼠标移出游戏界面的事件 * * MouseEvevt:鼠标的事件,记录鼠标做的事情 * */ @Override //当鼠标在游戏界面移动时,会触发此方法 public void mouseMoved(MouseEvent e) { //让英雄机跟着鼠标移动,就让英雄机的横纵坐标等于鼠标的横纵坐标 //获取鼠标的坐标(getX();获取鼠标的横坐标, getY();获取鼠标的纵坐标) int mx = e.getX(); int my = e.getY(); //让英雄机移动到鼠标的位置(英雄机移动到鼠标的位置,是英雄机的行为,可以在英雄机中定义方法) //此时英雄机依然不会移动,其实英雄机的坐标已经改变,但是没有把英雄机绘制到新的坐标,需要刷新页面 //heroPlane.move(mx, my); heroPlane.x = mx - heroPlane.w/2; heroPlane.y = my - heroPlane.h/2; //刷新页面,将英雄机绘制到新的页面 //重新调用paint方法(re 表示重新调用) repaint(); } @Override //当鼠标在游戏界面单击时,会触发此方法 public void mouseClicked(MouseEvent e) { System.out.println("~~~~~~~鼠标单击了"); } @Override //当鼠标在游戏界面按下时,会触发此方法 public void mousePressed(MouseEvent e) { System.out.println("!!!!!!!!鼠标被按下了"); } @Override //当鼠标移入游戏界面时,会触发此方法 public void mouseEntered(MouseEvent e) { System.out.println("**************鼠标被移出"); } @Override //当鼠标移出游戏界面时,会触发此方法 public void mouseExited(MouseEvent e) { System.out.println("**************鼠标被移入"); } }; //3.将适配器加入到监听器中(固定格式) addMouseListener(adapter); addMouseMotionListener(adapter); /* * 使用键盘适配器(固定模式) */ // 1.创建键盘适配器 KeyAdapter key = new KeyAdapter() { // 2.确定需要监听的键盘事件 @Override //当键盘按下时,会触发此方法 public void keyPressed(KeyEvent e) { //监听键盘的按键(每一个按键都对应有一个数字) //获取按键的数字 int a = e.getKeyCode(); //KeyEvent.VK_?;是表示指定的按键对应的数字 if(a == KeyEvent.VK_A || a == KeyEvent.VK_LEFT) { if((heroPlane.x -= 10) < -heroPlane.w/2) { heroPlane.x = 0 - heroPlane.w/2; } }else if(a == KeyEvent.VK_D || a == KeyEvent.VK_RIGHT) { if((heroPlane.x += 10) > 600 - heroPlane.w/2) { heroPlane.x = 600 - heroPlane.w/2; } }else if(a == KeyEvent.VK_W || a == KeyEvent.VK_UP) { if((heroPlane.y -= 10) < 0) { heroPlane.y = 0; } }else if(a == KeyEvent.VK_S || a == KeyEvent.VK_DOWN) { if((heroPlane.y += 10) > 800 - heroPlane.h) { heroPlane.y = 800 - heroPlane.h; } } //重绘,将英雄机画到新的位置上 repaint(); /* if(e.getKeyChar() == 'a') { if((heroPlane.x -= 10) < -heroPlane.w/2) { heroPlane.x = 0 - heroPlane.w/2; } } if(e.getKeyChar() == 'd') { if((heroPlane.x += 10) > 600 - heroPlane.w/2) { heroPlane.x = 600 - heroPlane.w/2; } } if(e.getKeyChar() == 'w') { if((heroPlane.y -= 10) < 0) { heroPlane.y = 0; } } if(e.getKeyChar() == 's') { if((heroPlane.y += 10) > 800 - heroPlane.h) { heroPlane.y = 800 - heroPlane.h; } } //重绘,将英雄机画到新的位置上 repaint(); */ } }; // 3.将适配器加入到窗体的监听器中(加到面板的键盘监听器中是没有用的) //可以在创建面板对象时,把窗体对象传过来,然后把键盘适配器添加到窗体的键盘监听器中 //需要面板的构造器添加参数,并指定类型 gameFrame.addKeyListener(key); } //专门画图的方法,重写于JComponent类(JPanel的父类) //画图的方法:(画图时一定要注意图片的尺寸) // 格式: g.drawImage(图片, 横坐标, 纵坐标, 宽度, 高度, 当转换了更多图片是要通知的对象) // 画图时如果不设定图片的大小,图片显示就是原图的大小 @Override public void paint(Graphics g) { //g.drawImage(img, x, y, observer); //横纵坐标是设置图片左上角的坐标,设置图片的大小 g.drawImage(bgp, 0, 0, 600, 800, null); //在paint中画图是有顺序的,先画的在下面一层,先画的会被后画的覆盖 //给敌机画图 //已经把敌机放入集合中了,使用遍历绘制敌机 for(int i = 0; i < arrays.size(); i++) { EnemyPlane enemyPlane = arrays.get(i); g.drawImage(enemyPlane.img, enemyPlane.x, enemyPlane.y, enemyPlane.w, enemyPlane.h, null); } //给英雄机画图 g.drawImage(heroPlane.img, heroPlane.x, heroPlane.y, heroPlane.w, heroPlane.h, null); //把英雄机的弹药画进面板 for(int i = 0; i < HFire.size(); i++) { HeroFire heroFire = HFire.get(i); g.drawImage(heroFire.img, heroFire.x, heroFire.y, heroFire.w, heroFire.h, null); } //把敌机的子弹画进面板中 // for(int i = 0; i < EnFire.size(); i++) { // EnemyFire enemyFire = EnFire.get(i); // g.drawImage(enemyFire.img, enemyFire.x, enemyFire.y, enemyFire.w, enemyFire.h, null); // } } } ![图片说明](https://img-ask.csdn.net/upload/202003/20/1584711414_269752.png)![图片说明](https://img-ask.csdn.net/upload/202003/20/1584711424_683016.png)![图片说明](https://img-ask.csdn.net/upload/202003/20/1584711438_860998.png)![图片说明](https://img-ask.csdn.net/upload/202003/20/1584711451_113820.jpg) ![图片说明](https://img-ask.csdn.net/upload/202003/20/1584711743_593343.png) 图一是运行时操作的画面,如果移动鼠标或者按着键盘不放(应该是飞机移动太快的时候),就会出现下面的画面,会一次出现多个子弹(我就的是鼠标移动时刷新的太快,但是线程里面是限制了时间的,难道是鼠标或者键盘和县线程里面重复刷新了???不会啊,求救啊!!!)。还有,截图代码中,如果把圈出来的判断代码放出来,游戏界面就会出现圈起来的样子(最左边的子弹向上走到一定高度就会变成两个,每次都是在那个高度,并且只有最左边的子弹会变化。)(我就的可能是集合删除后子弹的位置改变了,如果用LinkedList会不会好点?求救!!!)

初学者新人求问,这段代码在eclipse上为何没报错却无法运行?

package aaa; import javax.swing.*; import java.awt.event.*; class p206 implements ActionListener,KeyListener,MouseListener{ JTextArea ta=new JTextArea(5,5); p206(){ JFrame f=new JFrame("Listener"); JButton bme=new JButton("press me"); JButton byou=new JButton("press you"); bme.addActionListener(this); bme.addMouseListener(this); byou.addActionListener(this); byou.addKeyListener(this); f.add(ta);f.add(bme,"South");f.add(byou,"East"); f.setBounds(200,200,400,200); f.setVisible(true); } public void actionPerformed(ActionEvent x){ ta.setText(ta.getText()+"\n"+x.getActionCommand()); } public void keyPressed(KeyEvent e){ta.setText(e.paramString());} public void keyReleased(KeyEvent e){} public void keyTyped(KeyEvent e){} public void mousePressed(MouseEvent e){} public void mouseReleased(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public void mouseClicked(MouseEvent e){ ta.setText(ta.getText()+"\n"+e.getX()+","+e.getY()); } public class test { public static void main(String[] args) { // TODO Auto-generated method stub new p206(); } } }

Java中在使用addMouseListener函数时建立 new MouseListener报错

我是一名大二学生,最近在学习Java中GUI相关内容时,用到了addMouseListener函数,但在建立new MouseListener时却报错了,但代码和书上一样,并且在室友电脑上也可以正常运行,请求各位前辈帮忙看一看,![图片说明](https://img-ask.csdn.net/upload/201911/04/1572877617_344954.png) 具体代码如下: ``` import java.awt.*; import java.awt.event.*; import javax.swing.*; public class MouseEvent { private static void createAndShowGUI() { JFrame f = new JFrame("MouseEvent"); f.setLayout(new FlowLayout()); f.setSize(300,200); f.setLocation(300,200); f.setVisible(true); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JButton but = new JButton("Button"); f.add(but); but.addMouseListener(new MouseListener() { public void mouseReleased(MouseEvent e) { System.out.println("mouseReleased-鼠标放开事件"); } public void mousePressed(MouseEvent e) { System.out.println("mousePressed-鼠标按下事件"); } public void mouseExited(MouseEvent e) { System.out.println("mouseExited-鼠标移出按钮区事件"); } public void mouseEntered(MouseEvent e) { System.out.println("mouseEntered-鼠标进入按钮区事件"); } public void mouseClicked(MouseEvent e) { System.out.println("mouseClicked-鼠标完成单击事件"); } }); } public static void main(String[] args) { SwingUtilities.invokeLater(MouseEvent::createAndShowGUI); } } ```

一个画椭圆的JAVA程序

我就想知道mouseDragged方法中else里面的px1=e.getX()和py1=e.getY() 这两句是干嘛用的?前面mouseMoved方法中不是给px1,py1赋值过了吗,这里再赋值一次是为了什么?而且这里再次赋值了之后下面 px2=Math.abs(e.getX()-px1); py2=Math.abs(e.getY()-py1); 这两句我也是一脸懵逼啊,前边再次赋值的时候不是 px1=e.getX(),py1=e.getY()吗,那相减不是等于0嘛?!我是菜鸟啊不是很理解其中的意思,希望各位大神来帮我解释下,万分感谢!!! import java.awt.*; import java.awt.event.*; import javax.swing.*; public class App14_4 extends JFrame implements MouseMotionListener,MouseListener { static App14_4 frm=new App14_4(); int px1,py1,px2,py2,status=0; int rpx1,rpy1,rpx2,rpy2; public static void main(String[] args) { frm.setTitle("鼠标拖动画椭圆"); frm.setSize(250,230); frm.addMouseListener(frm); frm.addMouseMotionListener(frm); frm.setVisible(true); frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub px1=e.getX(); py1=e.getY(); status=0; } public void mouseDragged(MouseEvent e) { Graphics g=this.getGraphics(); g.setColor(Color.YELLOW); g.setXORMode(Color.BLACK); if(status==1) g.drawOval(px1, py1, px2, py2); else{ px1=e.getX(); py1=e.getY(); status=1; } px2=Math.abs(e.getX()-px1); py2=Math.abs(e.getY()-py1); g.drawOval(px1, py1, px2, py2); rpx1=px1;rpy1=py1;rpx2=px2;rpy2=py2; } public void mouseReleased(MouseEvent e) { Graphics g=this.getGraphics(); g.setColor(Color.RED); g.drawOval(rpx1, rpy1, rpx2, rpy2); } @Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } }

flex 拖动的问题,会的进来!做不出来我就要被炒鱿鱼了!

问题在附件:主要是想用dragmanager一次拖动多个组件! [b]问题补充:[/b] Actionscript 3代码 protected function canvas_mouseDownHandler(event:MouseEvent):void { event.target.startDrag(); } protected function canvas_mouseDownHandler(event:MouseEvent):void { event.target.startDrag(); } event.target就是你选中的那些组件.. ———————————————————————————————— 可是event.target不是只有一个而已吗?怎么才能一次拖动多个,最好用dragmanager 来做,经理让那样做的!谢谢!

五子棋游戏,运行结果出错,但是我总是检查不出来,希望得到帮助!!!

import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.*; import java.awt.*; public class Example2 extends JFrame implements MouseListener,ActionListener { private ExamplePanel2[] panel=new ExamplePanel2[100]; private JButton jbStart=new JButton ("开始游戏"); private JButton jbBlack=new JButton ("黑方"); private JButton jbWhite=new JButton ("白方"); private int colorFlag=0; Example2() { Container c=this.getContentPane(); c.setLayout(new BorderLayout()); JPanel pc=new JPanel(); JPanel ps=new JPanel(); c.add(pc,BorderLayout.CENTER); c.add(pc,BorderLayout.SOUTH); pc.setLayout(new GridLayout(10,10)); for(int i=0;i<panel.length;i++) { panel[i]=new ExamplePanel2(); panel[i].setNumber(i+1); panel[i].addMouseListener(this); pc.add(panel[i]); } ps.setLayout(new FlowLayout(FlowLayout.CENTER)); ps.add(jbStart); ps.add(jbBlack); ps.add(jbWhite); jbStart.addActionListener(this); jbBlack.addActionListener(this); jbWhite.addActionListener(this); this.setTitle("五子棋游戏"); this.setSize(500,500); this.setVisible(true); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void mouseClicked(MouseEvent arg0) { } public void mouseEntered(MouseEvent arg0) { } public void mouseExited(MouseEvent arg0) { } public void mousePressed(MouseEvent arg0) { for(int i=0;i<panel.length;i++) { if(arg0.getSource()==panel[i]) { if(colorFlag==0) { panel[i].setColor(0); panel[i].repaint(); } else { panel[i].setColor(1); panel[i].repaint(); } } } } public void mouseReleased(MouseEvent arg0) { } public void actionPerformed(ActionEvent arg0) { if(arg0.getSource()==jbBlack) colorFlag=0; else if(arg0.getSource()==jbWhite) colorFlag=1; else if(arg0.getSource()==jbStart) for(int i=0;i<panel.length;i++) panel[i].setStartFlag(1); } public static void main(String args[]) { Example2 ex=new Example2(); } } import javax.swing.*; import javax.swing.border.LineBorder; import java.awt.*; public class ExamplePanel2 extends JPanel { private int color=0,number=0,startFlag=0,lock=0; ExamplePanel2 setBackground() { this.setBorder(new LineBorder(Color.black,1)); this.setBorder(new Color(255,205,255)); } public void paintComponent(Graphics g); { super.paintComponent(g); if(startFlag==1) { if(lock==0) { if(color==0) g.setColor(Color.black); else g.setColor(Color.white); g.fillOval(10,10,30,30); lock=1; } } } public int getColor() { return color; } public void setColor(int color) { this.color=color; } public int getNumber(int number) { return number; } spublic void setNumber(int number) { this.number=number; } public int getStartFlag() { return startFlag; } spublic void setStartFlag(int startFlag) { this.startFlag=startFlag; } }

JAVA小白向大神求助。mousemotionlistener

代码可能有点乱而长。我就是想问鼠标控制不了 hero.png这个图片的移动 package start; import javax.swing.ImageIcon; import javax.swing.JFrame; public class StartFrame extends JFrame{ /** * */ public int x; public int y; public static StartFrame startFrame; private static final long serialVersionUID = 1L; public StartFrame(){ //设置窗体大小 this.setSize(400, 654); //设置窗口居中显示 //this.setLocationRelativeTo(null); this.setLocation(150, 50); //设置任务栏图标 this.setIconImage(new ImageIcon("image/icon.jpd").getImage()); //去掉窗体的自带边框 this.setUndecorated(true); StartPanel sp = new StartPanel(); this.add(sp); this.setVisible(true); //默认窗体可见 放在 this.add(sp);后面 //启动线程 Thread th = new Thread(sp); th.start(); } public static void main(String[] args) { startFrame = new StartFrame(); } } package start; import java.awt.Graphics; import javax.swing.ImageIcon; import javax.swing.JPanel; public class StartPanel extends JPanel implements Runnable { /** * 通过鼠标来控制MouseMontionListener * 重写mouseMovie() ——————测试语句 * 给面板添加监听器 * panel.addMouseMontionListener(面板); * 点关闭图标关闭 * 点击缩小图标 * 实现MouseListener接口 * 重写 */ private static final long serialVersionUID = 1L; int x; public void paint(Graphics g) { // TODO Auto-generated method stub super.paint(g); g.drawImage(new ImageIcon("image/startback.png").getImage(), 0, 0, this); g.drawImage(new ImageIcon("image/start_aircraft.png").getImage(), x, 450, this); } public void run() { // TODO Auto-generated method stub while (true) { x++; try { Thread.sleep(1); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } if (x > 400) { // 隐藏StartFrame的窗体 StartFrame.startFrame.dispose(); /* * 获得左上角的坐标 int x = StartFrame.startFrame.getLocation().x;int y * = StartFrame.startFrame.getLocation().y; */ // 创建新的PlaneFrame窗口 new PlaneFrame(); break; } repaint(); } } } package start; import javax.swing.ImageIcon; import javax.swing.JFrame; /** * 当StartFrame的小飞机飞到最右边时,Start窗口隐藏(this.disapose()),显示新的窗口PlaneFrame * 创建新的面板 * */ public class PlaneFrame extends JFrame{ /** * */ public static PlaneFrame planeFrame; //定义全局变量:可以在所有位置使用 private static final long serialVersionUID = 1L; public PlaneFrame(){ this.setSize(400, 654); //x y? this.setLocation(150,50); this.setIconImage(new ImageIcon("image/icon.jpd").getImage()); this.setUndecorated(true); PlanePanel pp = new PlanePanel(); this.add(pp); pp.addMouseMotionListener(pp); //第一个pp代表面,,第二个pp代表监听器对象 this.setVisible(true); //给面板添加监听器对象 } public static void main(String[] args) { planeFrame = new PlaneFrame(); } } package start; import java.awt.Graphics; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import javax.swing.ImageIcon; import javax.swing.JPanel; public class PlanePanel extends JPanel implements MouseListener,MouseMotionListener{ // 定义布尔类型isLive(存活) private boolean isLive = true; int x; ImageIcon icon = new ImageIcon("Image/hero.png"); public Object gImage = new ImageIcon("image/hero.png"); public Object gImage1 = new ImageIcon("image/hero_destory.png"); private int hero_x; private int hero_y; public void paint(Graphics g) { // TODO Auto-generated method stub super.paint(g); g.drawImage(new ImageIcon("image/backmain.png").getImage(), 0, 0, this); g.drawImage(new ImageIcon("image/min.png").getImage(), 325, 3, this); g.drawImage(new ImageIcon("image/close.png").getImage(), 360, 3, this); g.drawImage(new ImageIcon("image/hero.png").getImage(), x, 450,this); } public void mouseDragged(MouseEvent arg0) { // TODO Auto-generated method stub } public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub int x = e.getX(); int y = e.getY(); //根据鼠标的坐标计算出英雄机的坐标 hero_x = x-icon.getIconWidth()/2; hero_y =-icon.getIconHeight()/2; System.out.println("重写move"); this.repaint(); } public void mouseClicked(MouseEvent arg0) { // TODO Auto-generated method stub } public void mouseEntered(MouseEvent arg0) { // TODO Auto-generated method stub } public void mouseExited(MouseEvent arg0) { // TODO Auto-generated method stub } public void mousePressed(MouseEvent arg0) { // TODO Auto-generated method stub } public void mousePressed1(MouseEvent arg0) { // TODO Auto-generated method stub } public void mouseReleased(MouseEvent arg0) { // TODO Auto-generated method stub } }

请问为什么VS2019控制台无法监听鼠标事件

这个程序的作用是把鼠标放入控制台,控制台就能显示鼠标当前坐标; 结果我用vs的 "本地windows调试器"运行,发现它监听不了鼠标事件,控制台的属性如下: ![图片说明](https://img-ask.csdn.net/upload/201907/19/1563517114_98317.jpg)![图片说明](https://img-ask.csdn.net/upload/201907/19/1563517130_736272.jpg) 但是在codeblock里运行却可以: ![图片说明](https://img-ask.csdn.net/upload/201907/19/1563517180_95797.jpg) 请问这是为什么? 程序代码如下: #include <windows.h> #include <stdio.h> int main(void) { // 获取标准输入输出设备句柄 HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); HANDLE hIn = GetStdHandle(STD_INPUT_HANDLE); CONSOLE_SCREEN_BUFFER_INFO bInfo; INPUT_RECORD mouseRec; DWORD res; COORD crPos, crHome = { 0, 0 }; printf("[Cursor Position] X: %2lu Y: %2lu\n", 0, 0); // 初始状态 while (1) { ReadConsoleInput(hIn, &mouseRec, 1, &res); if (mouseRec.EventType == MOUSE_EVENT) { if (mouseRec.Event.MouseEvent.dwButtonState == FROM_LEFT_1ST_BUTTON_PRESSED) { if (mouseRec.Event.MouseEvent.dwEventFlags == DOUBLE_CLICK) { break; // 左键双击 退出循环 } } crPos = mouseRec.Event.MouseEvent.dwMousePosition; GetConsoleScreenBufferInfo(hOut, &bInfo); SetConsoleCursorPosition(hOut, crHome); printf("[Cursor Position] X: %2lu Y: %2lu", crPos.X, crPos.Y); SetConsoleCursorPosition(hOut, bInfo.dwCursorPosition); switch (mouseRec.Event.MouseEvent.dwButtonState) { case FROM_LEFT_1ST_BUTTON_PRESSED: // 左键 输出A FillConsoleOutputCharacter(hOut, 'A', 1, crPos, &res); break; // 如果使用printf输出,则之前需要先设置光标的位置 case RIGHTMOST_BUTTON_PRESSED: // 右键 输出a FillConsoleOutputCharacter(hOut, 'a', 1, crPos, &res); break; default: break; } } } CloseHandle(hOut); // 关闭标准输出设备句柄 CloseHandle(hIn); // 关闭标准输入设备句柄 return 0; }

java中的键盘监听器失效问题

package com.tarena.swing; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.JFrame; import javax.swing.JPanel; public class TestListener extends JPanel { public void action(){ KeyAdapter k=new KeyAdapter() { public void keyReleased(KeyEvent k){ System.out.println("sssss"); } }; this.addKeyListener(k); MouseAdapter l=new MouseAdapter() { public void mouseMoved(MouseEvent e){ System.out.println(e.getX()+" ,"+e.getY()); } }; this.addMouseMotionListener(l); } public static void main(String[] args) { JFrame j=new JFrame(); TestListener l=new TestListener(); j.setSize(400,654); j.add(l); j.setVisible(true); j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); j.setAlwaysOnTop(true); l.action(); } } ``` ``` 为TestSwing添加键盘监听事件和鼠标移动监听事件 但是键盘的监听失效 只有鼠标移动的能在控制台输出鼠标坐标 ``` ```

【求助js】为什么ie和edge无法正常运行下面代码

window.onload = function(){ var selects = document.getElementsByTagName("select"); var province = selects[0]; var xmlHttp = new XMLHttpRequest(); xmlHttp.open("get", "${pageContext.request.contextPath}/provinceservlet", true); xmlHttp.send(null); xmlHttp.onreadystatechange = function () { if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { var doc = xmlHttp.responseXML; var provinces = doc.getElementsByTagName("province"); for(var xmlp of provinces) { var newOption = document.createElement("option"); newOption.value = xmlp.getAttribute("name"); newOption.innerText = xmlp.getAttribute("name"); province.appendChild(newOption) } } } }

如何解决 「win10系统下」win32控制台程序 「无法监听鼠标事件」这个问题?

int main() { HANDLE hIn = GetStdHandle(STD_INPUT_HANDLE); INPUT_RECORD Buf; DWORD Result; do { ReadConsoleInput(hIn, &Buf, 1, &Result); if (Buf.EventType == MOUSE_EVENT) cout << "Mouse !\n"; if (Buf.EventType == KEY_EVENT) cout << "Key !\n"; } while (!(Buf.EventType == MOUSE_EVENT&& Buf.Event.MouseEvent.dwEventFlags == DOUBLE_CLICK)); cout << "我是main哈哈哈\n"; return 0; } 上面是测试代码,有win7系统的兄弟测试下能不能监听到 如果不能解决, win10下 的控制台程序有其他办法监听鼠标事件吗?

java mousePressed事件无响应不知道什么问题

import java.util.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class HE extends JFrame { public HE() { showJPanel panel =new showJPanel(); //setLayout(new BordeLaout()); add(panel); } public static void main(String[] args) { HE frame = new HE(); frame.setTitle("showJFrame"); frame.setSize(310,410); frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } } //面板类 class showJPanel extends JPanel { private int currentX = 1 ,currentY = 1,rX = 10,rY = 10; private int cr = 255,cg = 0,cb = 0; int count = 0; public showJPanel() { addMouseMotionListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { currentX = e.getX(); currentY = e.getY(); double L = (currentX-rX)*(currentX-rX)+(currentY-rY)*(currentY-rY); if(Math.sqrt(L)<10) { rX = (int)(Math.random()*300)+10; //随机显示圆 rY = (int)(Math.random()*400)+10; cr = (int)(Math.random()*255); //随机确定颜色 cg = (int)(Math.random()*255); cb = (int)(Math.random()*255); repaint(); } L = 0; } }); } //覆盖父类方法 protected void paintComponent(Graphics g) { super.paintComponent(g); g.drawOval(rX,rY ,10,10); Color c = new Color(cr,cg,cb); g.setColor(c); g.fillOval(rX,rY,10,10); } }

java tcp连接服务端,每隔一秒发送一条消息,双击button开启,但是这时候界面就卡死了。怎么样才能不卡死

``` btnNewButton.addMouseListener(new MouseAdapter() { @Override public void mouseDoubleClick(MouseEvent e) { String ip = "192.168.1.25"; // 服务器端ip地址 int port = 8899; //Socket socketSend = null; try { socket = new Socket(ip, port); //connectStatus = true; } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } //OutputStream outputStream = null; try { outputStream = socket.getOutputStream(); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } //InputStream inputStream = null; try { inputStream = socket.getInputStream(); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } while (true) { try { outputStream.write(buff); outputStream.flush(); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } try { Thread.sleep(1000); } catch (InterruptedException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } byte revBuff[] = new byte[1024]; try { inputStream.read(revBuff); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } System.out.println(new String(revBuff)); } } }); ```

java新人求助,五子棋胜利判定无效。

private MouseListener playChessHandler=new MouseAdapter(){ public void mousePressed(MouseEvent e){ int x=e.getX(); int y=e.getY(); //******放一颗棋子 if(canplay=true){ if(x<=grids*space&&x>=0&&y<=grids*space&&y>=0){ if(chesses[round(x)][round(y)]==0){ chesses[round(x)][round(y)]=currColor; //currColor=currColor==1?2:1; //切换棋子颜色 if(currColor==1){ currColor=2; message="白棋先行"; //使上方提示信息随回合转变。 } else{ currColor=1; message="黑棋先行"; } repaint(); } else{ JOptionPane.showMessageDialog(null,"此处已有棋子,请重下!"); } }//***** /* if(currColor ==chesses[round(x)][round(y) + i]){ count++; i++; } i = 1; if(currColor == chesses[round(x)][round(y) - i]){ count++; i++; } if (count >= 5) { flag = true; } if(flag==true){ JOptionPane.showMessageDialog(null,"游戏结束"); canplay=false; } */ } else{ JOptionPane.showMessageDialog(null,"游戏结束,大侠请重新来过!"); } } public void mouseClicked(MouseEvent e){ int x=e.getX(); int y=e.getY(); int count =1 ; int i = 1 ; if(currColor ==chesses[round(x)][round(y) + i]){ count++; i++; } i = 1; if(currColor == chesses[round(x)][round(y) - i]){ count++; i++; } if (count >= 5) { canplay = false; } if(canplay==false){ JOptionPane.showMessageDialog(null,"游戏结束"); } } };

linux下利用/proc进行进程树的打印

在linux下利用c语言实现的进程树的打印,主要通过/proc下的目录中的进程文件,获取status中的进程信息内容,然后利用递归实现进程树的打印

设计模式(JAVA语言实现)--20种设计模式附带源码

课程亮点: 课程培训详细的笔记以及实例代码,让学员开始掌握设计模式知识点 课程内容: 工厂模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式、原型模型、代理模式、单例模式、适配器模式 策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式 课程特色: 笔记设计模式,用笔记串连所有知识点,让学员从一点一滴积累,学习过程无压力 笔记标题采用关键字标识法,帮助学员更加容易记住知识点 笔记以超链接形式让知识点关联起来,形式知识体系 采用先概念后实例再应用方式,知识点深入浅出 提供授课内容笔记作为课后复习以及工作备查工具 部分图表(电脑PC端查看):

Python数据分析与挖掘

92讲视频课+16大项目实战+源码+¥800元课程礼包+讲师社群1V1答疑+社群闭门分享会=99元 &nbsp; 为什么学习数据分析? &nbsp; &nbsp; &nbsp; 人工智能、大数据时代有什么技能是可以运用在各种行业的?数据分析就是。 &nbsp; &nbsp; &nbsp; 从海量数据中获得别人看不见的信息,创业者可以通过数据分析来优化产品,营销人员可以通过数据分析改进营销策略,产品经理可以通过数据分析洞察用户习惯,金融从业者可以通过数据分析规避投资风险,程序员可以通过数据分析进一步挖掘出数据价值,它和编程一样,本质上也是一个工具,通过数据来对现实事物进行分析和识别的能力。不管你从事什么行业,掌握了数据分析能力,往往在其岗位上更有竞争力。 &nbsp;&nbsp; 本课程共包含五大模块: 一、先导篇: 通过分析数据分析师的一天,让学员了解全面了解成为一个数据分析师的所有必修功法,对数据分析师不在迷惑。 &nbsp; 二、基础篇: 围绕Python基础语法介绍、数据预处理、数据可视化以及数据分析与挖掘......这些核心技能模块展开,帮助你快速而全面的掌握和了解成为一个数据分析师的所有必修功法。 &nbsp; 三、数据采集篇: 通过网络爬虫实战解决数据分析的必经之路:数据从何来的问题,讲解常见的爬虫套路并利用三大实战帮助学员扎实数据采集能力,避免没有数据可分析的尴尬。 &nbsp; 四、分析工具篇: 讲解数据分析避不开的科学计算库Numpy、数据分析工具Pandas及常见可视化工具Matplotlib。 &nbsp; 五、算法篇: 算法是数据分析的精华,课程精选10大算法,包括分类、聚类、预测3大类型,每个算法都从原理和案例两个角度学习,让你不仅能用起来,了解原理,还能知道为什么这么做。

广工操作系统课程设计(文档+代码+可执行文件)

实现作业调度(先来先服务)、进程调度功能(时间片轮转) 实现内存管理功能(连续分配)。 实现文件系统功能(选作) 这些功能要有机地连接起来

Only老K说-爬取妹子图片(简单入门)

安装第三方请求库 requests 被网站禁止了访问 原因是我们是Python过来的 重新给一段 可能还是存在用不了,使用网页的 编写代码 上面注意看匹配内容 User-Agent:请求对象 AppleWebKit:请求内核 Chrome浏览器 //请求网页 import requests import re //正则表达式 就是去不规则的网页里面提取有规律的信息 headers = { 'User-Agent':'存放浏览器里面的' } response = requests.get

linux“开发工具三剑客”速成攻略

工欲善其事,必先利其器。Vim+Git+Makefile是Linux环境下嵌入式开发常用的工具。本专题主要面向初次接触Linux的新手,熟练掌握工作中常用的工具,在以后的学习和工作中提高效率。

Python代码实现飞机大战

文章目录经典飞机大战一.游戏设定二.我方飞机三.敌方飞机四.发射子弹五.发放补给包六.主模块 经典飞机大战 源代码以及素材资料(图片,音频)可从下面的github中下载: 飞机大战源代码以及素材资料github项目地址链接 ————————————————————————————————————————————————————————— 不知道大家有没有打过飞机,喜不喜欢打飞机。当我第一次接触这个东西的时候,我的内心是被震撼到的。第一次接触打飞机的时候作者本人是身心愉悦的,因为周边的朋友都在打飞机, 每

Python数据清洗实战入门

本次课程主要以真实的电商数据为基础,通过Python详细的介绍了数据分析中的数据清洗阶段各种技巧和方法。

2019 Python开发者日-培训

本次活动将秉承“只讲技术,拒绝空谈”的理念,邀请十余位身处一线的Python技术专家,重点围绕Web开发、自动化运维、数据分析、人工智能等技术模块,分享真实生产环境中使用Python应对IT挑战的真知灼见。此外,针对不同层次的开发者,大会还安排了深度培训实操环节,为开发者们带来更多深度实战的机会。

apache-jmeter-5.1.1(Requires Java 8+).zip

。Apache JMeter 5.1.1 (Requires Java 8+),需要jdk8以上的版本。

数通HCNP中文理论全套教材.rar

内涵HCNP-IENP中文理论书-内文,

Python可以这样学(第四季:数据分析与科学计算可视化)

董付国老师系列教材《Python程序设计(第2版)》(ISBN:9787302436515)、《Python可以这样学》(ISBN:9787302456469)配套视频,在教材基础上又增加了大量内容,通过实例讲解numpy、scipy、pandas、statistics、matplotlib等标准库和扩展库用法。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

我以为我对Mysql事务很熟,直到我遇到了阿里面试官

太惨了,面试又被吊打

2019 AI开发者大会

2019 AI开发者大会(AI ProCon 2019)是由中国IT社区CSDN主办的AI技术与产业年度盛会。多年经验淬炼,如今蓄势待发:2019年9月6-7日,大会将有近百位中美顶尖AI专家、知名企业代表以及千余名AI开发者齐聚北京,进行技术解读和产业论证。我们不空谈口号,只谈技术,诚挚邀请AI业内人士一起共铸人工智能新篇章!

图书管理系统(Java + Mysql)我的第一个完全自己做的实训项目

图书管理系统 Java + MySQL 完整实训代码,MVC三层架构组织,包含所有用到的图片资源以及数据库文件,大三上学期实训,注释很详细,按照阿里巴巴Java编程规范编写

Python数据挖掘简易入门

&nbsp; &nbsp; &nbsp; &nbsp; 本课程为Python数据挖掘方向的入门课程,课程主要以真实数据为基础,详细介绍数据挖掘入门的流程和使用Python实现pandas与numpy在数据挖掘方向的运用,并深入学习如何运用scikit-learn调用常用的数据挖掘算法解决数据挖掘问题,为进一步深入学习数据挖掘打下扎实的基础。

C/C++学习指南全套教程

C/C++学习的全套教程,从基本语法,基本原理,到界面开发、网络开发、Linux开发、安全算法,应用尽用。由毕业于清华大学的业内人士执课,为C/C++编程爱好者的教程。

微信公众平台开发入门

本套课程的设计完全是为初学者量身打造,课程内容由浅入深,课程讲解通俗易懂,代码实现简洁清晰。通过本课程的学习,学员能够入门微信公众平台开发,能够胜任企业级的订阅号、服务号、企业号的应用开发工作。 通过本课程的学习,学员能够对微信公众平台有一个清晰的、系统性的认识。例如,公众号是什么,它有什么特点,它能做什么,怎么开发公众号。 其次,通过本课程的学习,学员能够掌握微信公众平台开发的方法、技术和应用实现。例如,开发者文档怎么看,开发环境怎么搭建,基本的消息交互如何实现,常用的方法技巧有哪些,真实应用怎么开发。

三个项目玩转深度学习(附1G源码)

从事大数据与人工智能开发与实践约十年,钱老师亲自见证了大数据行业的发展与人工智能的从冷到热。事实证明,计算机技术的发展,算力突破,海量数据,机器人技术等,开启了第四次工业革命的序章。深度学习图像分类一直是人工智能的经典任务,是智慧零售、安防、无人驾驶等机器视觉应用领域的核心技术之一,掌握图像分类技术是机器视觉学习的重中之重。针对现有线上学习的特点与实际需求,我们开发了人工智能案例实战系列课程。打造:以项目案例实践为驱动的课程学习方式,覆盖了智能零售,智慧交通等常见领域,通过基础学习、项目案例实践、社群答疑,三维立体的方式,打造最好的学习效果。

2021考研数学张宇基础30讲.pdf

张宇:博士,全国著名考研数学辅导专家,教育部“国家精品课程建设骨干教师”,全国畅销书《张宇高等数学18讲》《张宇线性代数9讲》《张宇概率论与数理统计9讲》《张宇考研数学题源探析经典1000题》《张宇考

专为程序员设计的数学课

<p> 限时福利限时福利,<span>15000+程序员的选择!</span> </p> <p> 购课后添加学习助手(微信号:csdn590),按提示消息领取编程大礼包!并获取讲师答疑服务! </p> <p> <br> </p> <p> 套餐中一共包含5门程序员必学的数学课程(共47讲) </p> <p> 课程1:《零基础入门微积分》 </p> <p> 课程2:《数理统计与概率论》 </p> <p> 课程3:《代码学习线性代数》 </p> <p> 课程4:《数据处理的最优化》 </p> <p> 课程5:《马尔可夫随机过程》 </p> <p> <br> </p> <p> 哪些人适合学习这门课程? </p> <p> 1)大学生,平时只学习了数学理论,并未接触如何应用数学解决编程问题; </p> <p> 2)对算法、数据结构掌握程度薄弱的人,数学可以让你更好的理解算法、数据结构原理及应用; </p> <p> 3)看不懂大牛代码设计思想的人,因为所有的程序设计底层逻辑都是数学; </p> <p> 4)想学习新技术,如:人工智能、机器学习、深度学习等,这门课程是你的必修课程; </p> <p> 5)想修炼更好的编程内功,在遇到问题时可以灵活的应用数学思维解决问题。 </p> <p> <br> </p> <p> 在这门「专为程序员设计的数学课」系列课中,我们保证你能收获到这些:<br> <br> <span> </span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">①价值300元编程课程大礼包</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">②应用数学优化代码的实操方法</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">③数学理论在编程实战中的应用</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">④程序员必学的5大数学知识</span> </p> <p class="ql-long-24357476"> <span class="ql-author-24357476">⑤人工智能领域必修数学课</span> </p> <p> <br> 备注:此课程只讲程序员所需要的数学,即使你数学基础薄弱,也能听懂,只需要初中的数学知识就足矣。<br> <br> 如何听课? </p> <p> 1、登录CSDN学院 APP 在我的课程中进行学习; </p> <p> 2、登录CSDN学院官网。 </p> <p> <br> </p> <p> 购课后如何领取免费赠送的编程大礼包和加入答疑群? </p> <p> 购课后,添加助教微信:<span> csdn590</span>,按提示领取编程大礼包,或观看付费视频的第一节内容扫码进群答疑交流! </p> <p> <img src="https://img-bss.csdn.net/201912251155398753.jpg" alt=""> </p>

DDR5_Draft_Spec_Rev05c.pdf

DDR5 spec

Java面试史上最全的JAVA专业术语面试100问 (前1-50)

前言: 说在前面, 面试题是根据一些朋友去面试提供的,再就是从网上整理了一些。 先更新50道,下一波吧后面的也更出来。 求赞求关注!! 废话也不多说,现在就来看看有哪些面试题 1、面向对象的特点有哪些? 抽象、继承、封装、多态。 2、接口和抽象类有什么联系和区别? 3、重载和重写有什么区别? 4、java有哪些基本数据类型? 5、数组有没有length()方法?String有没有length()方法? 数组没有length()方法,它有length属性。 String有length()方法。 集合求长度用

网络工程师小白入门--【思科CCNA、华为HCNA等网络工程师认证】

本课程适合CCNA或HCNA网络小白同志,高手请绕道,可以直接学习进价课程。通过本预科课程的学习,为学习网络工程师、思科CCNA、华为HCNA这些认证打下坚实的基础! 重要!思科认证2020年2月24日起,已启用新版认证和考试,包括题库都会更新,由于疫情原因,请关注官网和本地考点信息。题库网络上很容易下载到。

C/C++跨平台研发从基础到高阶实战系列套餐

一 专题从基础的C语言核心到c++ 和stl完成基础强化; 二 再到数据结构,设计模式完成专业计算机技能强化; 三 通过跨平台网络编程,linux编程,qt界面编程,mfc编程,windows编程,c++与lua联合编程来完成应用强化 四 最后通过基于ffmpeg的音视频播放器,直播推流,屏幕录像,

Python界面版学生管理系统

前不久上传了一个控制台版本的学生管理系统,这个是Python界面版学生管理系统,这个是使用pycharm开发的一个有界面的学生管理系统,基本的增删改查,里面又演示视频和完整代码,有需要的伙伴可以自行下

2019数学建模A题高压油管的压力控制 省一论文即代码

2019数学建模A题高压油管的压力控制省一完整论文即详细C++和Matlab代码,希望对同学们有所帮助

4小时玩转微信小程序——基础入门与微信支付实战

这是一个门针对零基础学员学习微信小程序开发的视频教学课程。课程采用腾讯官方文档作为教程的唯一技术资料来源。杜绝网络上质量良莠不齐的资料给学员学习带来的障碍。 视频课程按照开发工具的下载、安装、使用、程序结构、视图层、逻辑层、微信小程序等几个部分组织课程,详细讲解整个小程序的开发过程

相关热词 c#中如何设置提交按钮 c#帮助怎么用 c# 读取合并单元格的值 c#带阻程序 c# 替换span内容 c# rpc c#控制台点阵字输出 c#do while循环 c#调用dll多线程 c#找出两个集合不同的
立即提问