
Sources JavaConsultez toutes les sources
Nombre d'auteurs : 29, nombre de sources : 134, création le 13 avril 2013
Sommaire→Interfaces graphiques→Composants texteCette classe permet de formater les entrées (nombres max de caractères, uniquement des chiffres, ... )
C'est une classe redéfinissant PlainDocument afin de filtrer la saisie dans un JTextField.
Un OutputStream vers un JTextArea permet de redéfinir les flux System.out et System.err vers un JTextArea, très utile dans les cas où l'on ne dispose pas de console standard. Vous trouverez ci-dessous la partie du code permettant d'utiliser cette classe
JTextArea myConsole = new JTextArea();
JTextAreaOutputStream outStream = new JTextAreaOutputStream(myConsole);
JTextAreaOutputStream errStream = new JTextAreaOutputStream(myConsole);
System.setOut(new PrintStream(outStream));
System.setErr(new PrintStream(errStream));
Ce programme crée un JTextField personnalisé
Voici comment appeler cette classe.
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class RoundTextUITest extends JPanel
{
public RoundTextUITest()
{
JTextField tf= new JTextField();
tf.setUI(new RoundTextUI());
tf.setPreferredSize(new Dimension(150,30));
tf.setText("Testing 1 2 3 4");
add(tf);
}
public static void main(String [] args)
{
JFrame frame = new JFrame("Customer Interface");
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
frame.getContentPane().add(new RoundTextUITest(),BorderLayout.CENTER);
frame.setSize(640, 480);
frame.setVisible(true);
}
}
Ce programme montre comment imprimer le contenu d'un JTextPane
JTextFieldX est une extension de la classe JTextField permettant de mémoriser les entrées de l'utilisateur lorsque ce dernier appuie sur la touche return. Les touches flèche-haut et flèche-bas permettent de naviguer parmi les commandes précédentes.
// Updates: 2002.05.28
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
/**
* Extension de la classe JTextField permettant le rappel d'entrées
* précédentes avec les touches haut et bas.
*/
public class JTextFieldX extends JTextField implements ActionListener, KeyListener {
ArrayList cmds;
int cmdIndex;
public JTextFieldX() {
super();
init();
}
public JTextFieldX(int columns) {
super(columns);
init();
}
public JTextFieldX(String text) {
super(text);
init();
}
public JTextFieldX(String text, int columns) {
super(text, columns);
init();
}
public void init() {
cmds = new ArrayList();
addKeyListener(this);
addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
cmds.add(getText());
cmdIndex = cmds.size();
setText("");
}
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_UP) {
if (cmdIndex > 0) setText((String)cmds.get(--cmdIndex));
e.consume();
}
if (e.getKeyCode() == KeyEvent.VK_DOWN) {
if (cmdIndex < cmds.size()-1) setText((String)cmds.get(++cmdIndex));
e.consume();
}
}
public void keyReleased(KeyEvent e) {}
public void keyTyped(KeyEvent e) {}
}



