進(jìn)行Eclipse插件開發(fā)時(shí),有時(shí)需要為插件開發(fā)自己的控制臺(tái),以便在必要輸出提示信息,本文介紹進(jìn)行Eclipse插件開發(fā)時(shí),如何實(shí)現(xiàn)自己的控制臺(tái)。
成都創(chuàng)新互聯(lián)公司專注于企業(yè)成都營銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、玄武網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站、成都做商城網(wǎng)站、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為玄武等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
1. 擴(kuò)展控制臺(tái)擴(kuò)展點(diǎn)。
對(duì)org.eclipse.ui.console.consoleFactories
擴(kuò)展點(diǎn)進(jìn)行擴(kuò)展,并填寫必要的信息,比如label,class等。如下圖。
2. 實(shí)現(xiàn)ConsoleFactory類。需要加給工程加入org.eclipse.ui.console_3.4.0.v20090513.jar。版本可以不同。
package project; import org.eclipse.ui.console.ConsolePlugin; import org.eclipse.ui.console.IConsole; import org.eclipse.ui.console.IConsoleFactory; import org.eclipse.ui.console.IConsoleManager; import org.eclipse.ui.console.MessageConsole; public class ConsoleFactory implements IConsoleFactory { private static MessageConsole console = new MessageConsole("", null); static boolean exists = false; /** * 描述:打開控制臺(tái) **/ public void openConsole() { showConsole(); } /** * 描述:顯示控制臺(tái) **/ private static void showConsole() { if (console != null) { // 得到默認(rèn)控制臺(tái)管理器 IConsoleManager manager = ConsolePlugin.getDefault() .getConsoleManager(); // 得到所有的控制臺(tái)實(shí)例 IConsole[] existing = manager.getConsoles(); exists = false; // 新創(chuàng)建的MessageConsole實(shí)例不存在就加入到控制臺(tái)管理器,并顯示出來 for (int i = 0; i < existing.length; i++) { if (console == existing[i]) exists = true; } if (!exists) { manager.addConsoles(new IConsole[] { console }); } // console.activate(); } } /** * 描述:關(guān)閉控制臺(tái) **/ public static void closeConsole() { IConsoleManager manager = ConsolePlugin.getDefault() .getConsoleManager(); if (console != null) { manager.removeConsoles(new IConsole[] { console }); } } /** * 獲取控制臺(tái) * @return **/ public static MessageConsole getConsole() { showConsole(); return console; } }
3.實(shí)現(xiàn)向控制臺(tái)輸出信息。
/** * 向控制臺(tái)打印一條信息,并激活控制臺(tái)。 * @param message * @param activate * 是否激活控制臺(tái) **/ public static void printToConsole(String message, boolean activate) { MessageConsoleStream printer = ConsoleFactory.getConsole() .newMessageStream(); printer.setActivateOnWrite(activate); printer.println("提示:" + message ); }
當(dāng)需要向控制臺(tái)輸出信息時(shí),只需要調(diào)用printToConsole()
函數(shù)即可。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)創(chuàng)新互聯(lián)的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接