PocketTranslator开发学习笔记
Background
在之前的工作中和学习中,都需要阅读大量的英语和日语的文档。遇到知识范围外的词汇或者生僻词汇时,需要查询百度翻译。每次复制粘贴打开网页,在中英日三种语言中切换翻译,觉得很麻烦。于是上网查讯大量了资料,借鉴了一些高手的源码,一边学习一边实现了这个小程序。
Overview
关于这次造的小程序,只需要在阅读文档时(线上线下都OK)复制单词,小程序自动识别为英语或日语,并实时翻译成中文。省去了切换语言亦或是打开浏览器的麻烦。
以下是本次的学习笔记。
Notes
java.awt.Toolkit
ToolKit是一个抽象类,ToolKit作为AWT工具箱,提供了GUI 最底层的Java访问,例如从系统获取图像、获取屏幕分辨率,获取屏幕色彩模型、全屏的时候获得屏幕大小等。
Toolkit是个非常有用类的,提供许多修改窗口默认行为的方法。
java.awt.datatransfer
提供在应用程序之间和在应用程序内部传输数据的接口和类。它定义了”transferable”对象的概念,该对象可以在应用程序之间或应用程序内部传输。它是一种通过实现Transferable接口标识自身为可传输的对象。
Toolkit.getDefaultToolkit()
在java中可以通过Toolkit类的getSystemClipboard方法来获得剪贴板的数据因为剪贴板上存放的可能不是文本,所以在使用剪贴板返回的数据之前我们需要先检测剪贴板上的内容是不是文本。
java.net
Java.net包中包含了所有与网络通信相关的类。
URL类:代表一个统一资源定位符,它是指向互联网“资源”的指针。
java.awt
Abstract Window ToolKit (抽象窗口工具包)
java.awt包提供了基本的java程序的GUI设计工具。主要包括下述三个概念:
- 组件–Component
- 容器–Container
- 布局管理器–LayoutManager
javax.swing
Swing 是一个为Java设计的GUI工具包。Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。
Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。