Java实现清屏功能
一、cmd命令行下實(shí)現(xiàn)清貧
1、編寫一個(gè)類ClearScreen.java,代碼如下:
public class ClearScreen{
//實(shí)現(xiàn)清屏方法的接口
public native static void clearScreen();
//加載dll文件
{
System.loadLibrary("Clear");//Clear 生成dll的文件名
}
}
2、編譯ClearScreen類
命令行環(huán)境下執(zhí)行 ??javac ClearScreen.java ?-> ClearScreen.class
3、生成一個(gè)C的頭文件,java里面提供一個(gè)工具javah
命令行環(huán)境下執(zhí)行 javah ClearScreen -> ClearScreen.h
4、編寫ClearScreen.cpp(c文件)實(shí)現(xiàn)native方法clearScreen(),代碼如下:
#include <jni.h>
#include "ClearScreen.h"
#include <stdlib.h>
//這里兩個(gè)ClearScreen 對(duì)應(yīng)·······1步驟里的java類名和方法名
JNIEXPORT void JNICALL Java_ClearScreen_clearScreen(JNIEnv *, jclass){
system("cls");
}
5、安裝一個(gè)microsoft compiler 編譯ClearScreen.cpp,得到Clear.dll ?//我這里用到的是Microsoft Visual Studio
注意:將Jdk安裝環(huán)境include目錄下的jawt_md.h jni_md.h jni.h三個(gè)頭文件copy到 Microsoft Visual Studio的 include目錄下
6、調(diào)用
注意:將生成的dll文件與ClearScreen類放在同一文件夾
(new ClearScreen()).clearScreen();
二、Eclipse IDE控制臺(tái)下實(shí)現(xiàn)清屏
在Eclipse控制臺(tái)下通過(guò)右鍵清除是可以實(shí)現(xiàn)清屏的,同時(shí)發(fā)現(xiàn)該清屏操作所對(duì)應(yīng)的快捷鍵是Ctrl+R。
于是我們產(chǎn)生這樣的思路:在該要清屏的時(shí)候讓程序的代碼自動(dòng)幫我們按下右鍵菜單并按下Ctrl+R鍵。
幸好,Java提供了一個(gè)用來(lái)產(chǎn)生本機(jī)輸入事件的機(jī)器人類 :java.awt.Robot,這個(gè)類有一系列關(guān)于鼠標(biāo)鍵盤的方法可以來(lái)調(diào)用。查了下這個(gè)類的一些方法,最終實(shí)現(xiàn)了上面所說(shuō)的功能。
public static void clear() throws AWTException{Robot r = new Robot();r.mousePress(InputEvent.BUTTON3_MASK); // 按下鼠標(biāo)右鍵r.mouseRelease(InputEvent.BUTTON3_MASK); // 釋放鼠標(biāo)右鍵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); }于是,在該要清屏的時(shí)候調(diào)用該clear()函數(shù)即可!
版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。
總結(jié)
以上是生活随笔為你收集整理的Java实现清屏功能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 7个重要内排序算法的实现以及实验比较
- 下一篇: java美元兑换,(Java实现) 美元