一、cmd命令行下实现清贫

1、编写一个类ClearScreen.java,代码如下:
public class ClearScreen{
//实现清屏方法的接口
public native static void clearScreen();

//加载dll文件
{
System.loadLibrary("Clear");//Clear 生成dll的文件名
}

}

2、编译ClearScreen类
命令行环境下执行   javac ClearScreen.java  -> ClearScreen.class

3、生成一个C的头文件,java里面提供一个工具javah
命令行环境下执行 javah ClearScreen -> ClearScreen.h

4、编写ClearScreen.cpp(c文件)实现native方法clearScreen(),代码如下:
#include <jni.h>
#include "ClearScreen.h"
#include <stdlib.h>
//这里两个ClearScreen 对应·······1步骤里的java类名和方法名
JNIEXPORT void JNICALL Java_ClearScreen_clearScreen(JNIEnv *, jclass){
system("cls");
}

5、安装一个microsoft compiler 编译ClearScreen.cpp,得到Clear.dll  //我这里用到的是Microsoft Visual Studio
注意:将Jdk安装环境include目录下的jawt_md.h jni_md.h jni.h三个头文件copy到 Microsoft Visual Studio的 include目录下

6、调用
注意:将生成的dll文件与ClearScreen类放在同一文件夹
(new ClearScreen()).clearScreen();

二、Eclipse IDE控制台下实现清屏

在Eclipse控制台下通过右键清除是可以实现清屏的,同时发现该清屏操作所对应的快捷键是Ctrl+R。

于是我们产生这样的思路:在该要清屏的时候让程序的代码自动帮我们按下右键菜单并按下Ctrl+R键。

幸好,Java提供了一个用来产生本机输入事件的机器人类 :java.awt.Robot,这个类有一系列关于鼠标键盘的方法可以来调用。查了下这个类的一些方法,最终实现了上面所说的功能。

public static void clear() throws AWTException{Robot r = new Robot();r.mousePress(InputEvent.BUTTON3_MASK);       // 按下鼠标右键r.mouseRelease(InputEvent.BUTTON3_MASK);    // 释放鼠标右键r.keyPress(KeyEvent.VK_CONTROL);             // 按下Ctrl键r.keyPress(KeyEvent.VK_R);                    // 按下R键r.keyRelease(KeyEvent.VK_R);                  // 释放R键r.keyRelease(KeyEvent.VK_CONTROL);            // 释放Ctrl键r.delay(100);       }

于是,在该要清屏的时候调用该clear()函数即可!

版权声明:本文为博主原创文章,未经博主允许不得转载。

Java实现清屏功能相关推荐

  1. java调用cmd清屏_Java | 使用JNA在Java中实现cls(cmd清屏)功能

    前言 本文将通过示例代码讲解如何在Java中通过使用JNA来调用cls命令行清屏功能,代码已同步到GitHub,此外本文不是专门讲解JNA的使用的,如需学习可到GitHub查看官网示例,下面我就开始通 ...

  2. java jni清屏_java使用jni清屏(只针对cmd)

    在java中没有提供清屏的接口,所有可以通过jni调用c语言的system("cls")清屏.当然,仅限于cmd清屏,不支持eclipse的控制台console清屏. 步骤: 1. ...

  3. python如何设置清屏功能_Python的IDEL增加清屏功能实例

    为idle增加一个清屏的扩展ClearWindow就可以了(在http://bugs.python.org/issue6143中可以看到这个扩展的说明). 下面我说安装使用的方法.首先下载clearw ...

  4. c语言菜单怎么清空,你好,请教个C语言菜单实现清屏功能。就是用switch里面输入一个数子,就实现部分清屏或者全清屏...

    在标准的C语言中,没有所谓的清屏函数的,特别是部分清屏 C语言它只是一个标准,只有标准的输入/输出函数 而你要的菜单/清屏功能,必须调用系统的函数才能实现(不同系统用户界面设计方式是不同的) 如在wi ...

  5. java break 在if 中使用_Java | 使用JNA在Java中实现cls(cmd清屏)功能

    作者:庄周de蝴蝶 出自:掘金 原文:juejin.im/post/6876454367332368392 编写 dll文件 由于本文不是专门讲解如何编写dll文件的,而且我也不是一个专业的C家族语言 ...

  6. java网络程序设计 聊天室之私聊、群聊和清屏功能的实现

    TCP聊天室实现了私聊.群聊和清屏的功能,简陋的UI界面,一个服务器端,支持多个客户端之间的通信. 项目代码:https://pan.baidu.com/s/17iegRam4KnWvcWHw3mvp ...

  7. java console清屏_JAVA 控制台清屏 | 学步园

    看到网上有人讨论Java如何实现对控制台清屏,看到的内容不是很理想.所以把这些内容总结一下. 直观一点,先看下代码吧 import static java.lang.System.out; /** * ...

  8. Python tkinter库:简易画板(笔、直线、矩形、圆形和橡皮擦工具+导入、保存、撤销、清屏功能)

    Tkinter Tkinter是Python的一款功能强大且全面.操作简易的GUI编程模块.今天,我们将使用tkinter制作一款简易画图软件.加油吧! 最终效果如下: 下载模块 我们将使用Pytho ...

  9. Python IDLE 如何设置清屏功能(清屏快捷键,亲测可用)

    前言   在使用 Python IDLE 时,我时常想有没有像命令提示符环境中的 cls 那样的清屏命令,一下子删除交互模式中所有已执行的命令,毕竟每次都关掉再重新打开 IDLE 有点麻烦,于是在网上 ...

最新文章

  1. 实现简书个人中心UI效果
  2. wpa_supplicant学习
  3. 091_类数组对象转为数组
  4. Python里三个最高逼格的调试神器
  5. 副本的leader选举
  6. c语言穷举算法 枚举法,c语言枚举法 穷举法 ppt课件
  7. python随机数模块_python 随机数模块 -- random
  8. 小学教师计算机说课,浙江温州小学计算机教师资格认证说课稿
  9. 【C11】complex
  10. vue add element报错_Vue 源码解析 -- new Vue -gt; mountComponent 001
  11. Week12(11月28日)
  12. mysql中 show index from tb_name命令各列的含义
  13. 医学成像中的深度学习——基于PyTorch的3D 医学图像分割
  14. 基于c#的IE 代理服务器设置
  15. 通过 SQL Server 视图访问另一个IP地址数据库服务器表的方法
  16. 最好最常用的国外邮箱推荐!注册非常简单!
  17. 高考色彩静物组合想要画好?画之前注意下这8点:
  18. AI产品经理入门手册(上)
  19. 一文了解,大数据就业薪资怎么样?
  20. 我的科研生活2017-3-18

热门文章

  1. BZOJ 3329 Xorequ (数位DP、矩阵乘法)
  2. python绘制指数函数图像及性质_指数函数图像及其性质正式版
  3. cmake could not find openssl_Mac OSX系统CMake、QT5运行OpenCV 4.0
  4. 【转载】redis开启远程访问
  5. C#:如何去掉groupbox的边框线
  6. [blog摘要]Exploring and Decoding ETW Providers using Event Log Channels
  7. 高并发服务端分布式系统设计概要(上)
  8. Algorithms学习笔记-Chapter0序言
  9. 初识莫队——小Z的袜子
  10. 贝叶斯理论在机器学习中的应用