java 代码实现复制粘粘功能,详细细节如图,我自己写了一段代码,搞了半天没搞好。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 代码实现复制粘粘功能,详细细节如图,我自己写了一段代码,搞了半天没搞好。相关的知识,希望对你有一定的参考价值。

public class QuickKey public static void main(String[] args) JFrame frame = new JFrame(); frame.setBounds(100,200,400,400); frame.setLayout(null); JButton button = new JButton("复制上一个(F9)"); button.setBounds(50,50,120,30); button.setFont(new Font("幼圆",Font.PLAIN, 10)); button.registerKeyboardAction(new ActionRefresh(), KeyStroke.getKeyStroke("F9"), JComponent.WHEN_IN_FOCUSED_WINDOW); frame.add(button); frame.setVisible(true); ////public class ActionRefresh implements ActionListener private Robot robot; @Override public void actionPerformed(ActionEvent e) try robot = new Robot(); catch (AWTException e1) robot.keyPress(KeyEvent.VK_UP); robot.keyRelease(KeyEvent.VK_UP); ... /* 这段代码是我知道瞎写的,意思就是先按向上方向键复制,再 按下方向键粘*/

如果是JTable.等java图形界面的组件,那么获取数据,赋值都比较简单.

但是看图片,是要写一个Excel的辅助功能, 这对java来说还是有点麻烦了.

    最优建议:

Excel的功能. 那么最佳的建议,是使用vba 语言进行扩展.(微软出品,简单,方便,代码量极少) .

    其次的建议:

C/C++ 键盘钩子 , 当读取到按键F9时 ,模拟键盘的复制粘贴等操作.

    不推荐java , 但java也能勉强凑合解决这个问题:

因为java 很难获取系统底层的按键, Robot也很有局限, 比如窗口失去焦点的时候,读取不到F9按键.   所以java需要调用JNI c语言 比较繁琐. 比较简单的是调用JNA了,但代码量也不少.

当然了如果非要用java写,也可以,我手写了一个简单的JNA+Robot配合

效果图

参考技术A 貌似没理解你要做什么样的,功能,你不会是想用JAVA给excel增加功能吧?

近期总结的一些Java基础

1.面向过程:当需要实现一个功能的时候,每一个过程中的详细步骤和细节都要亲力亲为。
2.面向对象:当需要实现一个功能的时候,不关心详细的步骤细节,而是找人帮我做事。
3.类和对象的关系:
  a-类是抽象的,通常不能直接使用。好像是一张手机设计图纸。
  b-对象是具体的,根据类创建一个对象使用,也就是根据图纸创造一个手机。
4.如何定义一个类:成员变量,成员方法。
  a-成员变量:直接定义在类当中,在方法外面。
  b-成员方法:去掉static关键字,其他和此前的普通方法一样。
5.如何根据类创建对象,格式:类名称 对象名 = new 类名称();
6.如何使用对象:
  a-使用成员变量:对象名.成员变量名
  b-调用成员方法:对象名.成员方法名(参数)
7.局部变量和成员变量的不同:
  a-定义的位置不同 (局部变量定义在方法里面;成员变量定义在方法外面,类里面)
  b-内存的位置不同
  c-生命周期不同
  d-默认值不同 (成员变量有默认值,局部变量没有默认值)
8.private关键字用法:直接写在成员变量前面,类外面不能直接访问,确保安全性。间接访问:编写一对Getter Setter方法。(特例:如果是类型,getXxx必须叫做isXxx的形式。)
9.this关键字典型用法:用来区分成员变量和局部变量。在成员变量的前面写上this.前缀即可。
10.构造方法:专门用来创建对象的方法,通过new关键字创建对象就是在调用构造方法。
  a-构造方法不能写返回值类型,连void也不能写。
  b-构造方法的名称必须和所在的类名称完全一样,大小写也要一样。
  c-构造方法也是可以重载的。
  d-构造方法如果没有定义,默认赠送一个;如果定义了,那么默认的不再赠送。
11.如何定义一个标准的pojo类:
  a-所有的成员变量都有private修饰
  b-为每一个成员变量编写一对Getter Setter方法
  c-编写一个无参数的构造方法
  d-编写一个全参数的构造方法

 





























以上是关于java 代码实现复制粘粘功能,详细细节如图,我自己写了一段代码,搞了半天没搞好。的主要内容,如果未能解决你的问题,请参考以下文章

html 截图粘粘图片JS

近期总结的一些Java基础

java开发买什么笔记本好,详细解说

主导细节与导航?

Mysql主从原理和复制配置详细讲解

linux下安装配置JDK,详细步骤图文