Sources JavaConsultez toutes les sources
Nombre d'auteurs : 29, nombre de sources : 134, création le 13 avril 2013
Cette 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) {
}
}