Java实现清屏功能
一、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实现清屏功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 7个重要内排序算法的实现以及实验比较
- 下一篇: Java程序设计语言(基础篇)机械工业出