📄 spottextexternalwindow.java
字号:
/* * Copyright (c) 2007 Sun Microsystems, Inc. All rights reserved. * * Sun Microsystems, Inc. has intellectual property rights relating to technology embodied in the product that is * described in this document. In particular, and without limitation, these intellectual property rights may * include one or more of the U.S. patents listed at http://www.sun.com/patents and one or more additional patents * or pending patent applications in the U.S. and in other countries. * * U.S. Government Rights - Commercial software. Government users are subject to the Sun Microsystems, Inc. * standard license agreement and applicable provisions of the FAR and its supplements. * * Use is subject to license terms. * * This distribution may include materials developed by third parties. Sun, Sun Microsystems, the Sun logo and * Java are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. * * Copyright (c) 2006 Sun Microsystems, Inc. Tous droits r?serv?s. * * Sun Microsystems, Inc. d?tient les droits de propri?t? intellectuels relatifs ? la technologie incorpor?e dans * le produit qui est d?crit dans ce document. En particulier, et ce sans limitation, ces droits de propri?t? * intellectuelle peuvent inclure un ou plus des brevets am?ricains list?s ? l'adresse http://www.sun.com/patents * et un ou les brevets suppl?mentaires ou les applications de brevet en attente aux Etats - Unis et dans les * autres pays. * * L'utilisation est soumise aux termes du contrat de licence. * * Cette distribution peut comprendre des composants d?velopp?s par des tierces parties. * Sun, Sun Microsystems, le logo Sun et Java sont des marques de fabrique ou des marques d?pos?es de Sun * Microsystems, Inc. aux Etats-Unis et dans d'autres pays. */package com.sun.spot.spotworld.gui;import com.sun.spot.spotworld.common.LocaleUtil;import java.awt.Dimension;import java.awt.Point;import java.io.DataInputStream;import java.io.IOException;import java.io.PrintStream;import javax.microedition.io.Connector;import javax.microedition.io.StreamConnection;import javax.swing.BorderFactory;import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTextArea;/** * * @author randy */public class SPOTTextExternalWindow extends JFrame implements IPrintStreamFactory { public SPOTTextExternalWindow() { init(); } JTextArea textArea; JScrollPane jsp; DataInputStream dataIn; public void init(){ setResizable(true); // setClosable(true); // Robert 6/11/2006: changed this to false. Causes weird errors. // setMaximizable(false); textArea = new JTextArea(5,20); textArea.setBorder(BorderFactory.createEmptyBorder(0,5,0,0)); textArea.setEditable(true); jsp = new JScrollPane(textArea); setContentPane(jsp); setPreferredSize(new Dimension(450,300)); //Desperation attempts to make the component visible. setSize(new Dimension(500,300)); setVisible(true); validate(); } public void startReadThread(final String url){ Runnable r = new Runnable(){ public void run(){ int rowCount = 0; try { StreamConnection conn = (StreamConnection) Connector.open(url); dataIn = conn.openDataInputStream(); } catch (IOException ioe) {} while(true){ try { String s = dataIn.readUTF(); append(s); } catch(IOException e){ e.printStackTrace(); } } } }; (new Thread(r)).start(); } public void append(String text){ textArea.append(text); jsp.getViewport().setViewPosition(new Point(0, textArea.getHeight())); //int lines = textArea.getLineCount(); } // Added method to allow System.out to be redirected to this TextWindow --Robert public PrintStream makePrintStream() { return new PrintStream(new TextAreaOutputStream(textArea)); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -