Swing+editmask

Oglądasz archiwalną wersję wątku "Swing+editmask" z forum pl.comp.lang.java



Stefan - 29 Sie 2001, 06:34
Jaka klasa w swing`u odpowiada polu edit mask tzn pole tekstowe ale z
możliwością nałożenia maski np. ##-##

Jezeli takowej nie ma to jak to oprogramować.

dzieki za pomoc,
Andrzej




Robert Kwolek - 29 Sie 2001, 06:35

Jaka klasa w swing`u odpowiada polu edit mask tzn pole tekstowe ale z
możliwością nałożenia maski np. ##-##

Jezeli takowej nie ma to jak to oprogramować.

dzieki za pomoc,
Andrzej



javax.swing.JPasswordField

Pozdrawiam,
Robert Kwolek



Stefan - 29 Sie 2001, 06:36

| Jaka klasa w swing`u odpowiada polu edit mask tzn pole tekstowe ale z
| możliwością nałożenia maski np. ##-##

| Jezeli takowej nie ma to jak to oprogramować.

| dzieki za pomoc,
| Andrzej

javax.swing.JPasswordField

Pozdrawiam,
Robert Kwolek



Nie wiem czy zostalem dobrze zrozumieny ale chodzi o pole w ktorego
wlasnosciach wprowadze maske np.
##-## i uzytkownik bedzie mogl w to pole wprowadzic dwa znaki numeryczne
 myslnik jest caly czas ) i dwa znaki numeryczne lub jezeli maska bedzie ###
to tylko trzy znaki numeryczne.

Jezeli sluzy do tego celu javax.swing.JPasswordField to gdzie ustawic make
na to pole

pozdrowienia
Andrzej






Robert Kwolek - 29 Sie 2001, 07:03

Nie wiem czy zostalem dobrze zrozumieny ale chodzi o pole w ktorego
wlasnosciach wprowadze maske np.
##-## i uzytkownik bedzie mogl w to pole wprowadzic dwa znaki numeryczne
 myslnik jest caly czas ) i dwa znaki numeryczne lub jezeli maska bedzie
###
to tylko trzy znaki numeryczne.

Jezeli sluzy do tego celu javax.swing.JPasswordField to gdzie ustawic make
na to pole

pozdrowienia
Andrzej



No to chyba zostales zle zrozumiany :-).
Chodzi ci o cos na podobienstwo pola do wprowadzania IP?
Jesli tak to mozesz skorzystac z JTextField i pokryc metode
createDefaultModel().
Ale moze i tym razem Cie zle nie zrozumialem...

Pozdrowiam,
Robert Kwolek




Arek Margraf - 29 Sie 2001, 07:08


| możliwością nałożenia maski np. ##-##

| Jezeli takowej nie ma to jak to oprogramować.

| dzieki za pomoc,
| Andrzej

javax.swing.JPasswordField



Oczywiscie ze nie

Nie ma takiego pola nalezy samemu to oprogramowac.

Ja to robie w ten sposob, ze pisze wlasna klase javax.swing.text.Document
(tzn dziedzicze z odpowieniego Documentu dla odpowiedniej kontrolki np.: dla
JTextField jest to PlainDocument - jak dobrze pamietam). Pokrywam w nim
metody insert i remove. Metody te wywolywane sa przed wstawieniem.usunieciem
tekstu z dokumentu. Mozna wiec pewne rzeczy blokowac i sprawdzac poprawnosc
teksu. Mozna tez dodac cos od siebi (np "-" w kodzie). Oczywiscie jezeli
odpowiedni tekst ma znalezc sie w dokumencie wolamy
super.insert/super.remove. Taki nasz dokument podpinamy zamiast oryginalnego
do komponentu (setDocumnedt). Warto zauwazyc ze insert/remove wolane sa w
kazdej sytuacji - nie tylko przy pisaniu z klawiatury ale takze przy
wstawianiu ze schowka.

Pozdr.

Arek



Leszek KUBRAK - 29 Sie 2001, 07:10

Jaka klasa w swing`u odpowiada polu edit mask tzn pole tekstowe ale z
możliwością nałożenia maski np. ##-##

Jezeli takowej nie ma to jak to oprogramować.



Niestety nie ma czegoś takiego. Musisz zrobić sam wychodząc np. z JTextField.

==================================================

P.U.I. "InfoKub"                  tel.0-602-673124
ul.Mogiłki 3A                  tel.(0-12)650-03-20
30-898 KRAKÓW                  fax.(0-12)650-03-21



Stefan - 29 Sie 2001, 07:30

| Nie wiem czy zostalem dobrze zrozumieny ale chodzi o pole w ktorego
| wlasnosciach wprowadze maske np.
| ##-## i uzytkownik bedzie mogl w to pole wprowadzic dwa znaki numeryczne
|  myslnik jest caly czas ) i dwa znaki numeryczne lub jezeli maska bedzie
###
| to tylko trzy znaki numeryczne.

| Jezeli sluzy do tego celu javax.swing.JPasswordField to gdzie ustawic
make
| na to pole

| pozdrowienia
| Andrzej

No to chyba zostales zle zrozumiany :-).
Chodzi ci o cos na podobienstwo pola do wprowadzania IP?
Jesli tak to mozesz skorzystac z JTextField i pokryc metode
createDefaultModel().
Ale moze i tym razem Cie zle nie zrozumialem...

Pozdrowiam,
Robert Kwolek



tym razem zostalem dobrze zrozumiany.

Jezli nie sprawiloby klopotu to prosilbym o wiecej szczegolow dotyczących
pokrycia metody createDefaultModel().

dzieki
Andrzej






Robert Kwolek - 29 Sie 2001, 08:01

tym razem zostalem dobrze zrozumiany.

Jezli nie sprawiloby klopotu to prosilbym o wiecej szczegolow dotyczących
pokrycia metody createDefaultModel().

dzieki
Andrzej



public class UpperCaseField extends javax.swing.JTextField
{
    static class UpperCaseDocument extends javax.swing.text.PlainDocument
    {
        public void insertString(int pOffset, String pString,
javax.swing.text.AttributeSet pAttributeSet) throws
javax.swing.text.BadLocationException
        {
            if (pString == null)
            {
                return;
            }
            if (pOffset 4)
            {
                super.insertString(pOffset, "", pAttributeSet);
            }
            else
            {
                super.insertString(pOffset, pString.toUpperCase(),
pAttributeSet);
            }
        }
    }

    public UpperCaseField(int pColumns)
    {
        super(pColumns);
    }

    protected javax.swing.text.Document createDefaultModel()
    {
        return new UpperCaseDocument();
    }

}



Jak sama nazwa mowi, pole to zamienia wszystkie wspisywane znaki na duze
litery i ogranicza ilosc tekstu
do 5 znakow (co mozna obejsc prze copy-paste). Podobny przyklad jest w
javadoc.
Mozesz teraz analizowac to co dostajesz do metody insertString i odpowiednio
formatowac tekst
wstawiajac "-" i sprawdzajac czy dostales znak/cyfre. itp. itd.

Pozdrawiam,
Robert Kwolek



Stefan - 29 Sie 2001, 08:50
dzieki

| tym razem zostalem dobrze zrozumiany.

| Jezli nie sprawiloby klopotu to prosilbym o wiecej szczegolow
dotyczących
| pokrycia metody createDefaultModel().

| dzieki
| Andrzej

public class UpperCaseField extends javax.swing.JTextField
{
    static class UpperCaseDocument extends javax.swing.text.PlainDocument
    {
        public void insertString(int pOffset, String pString,
javax.swing.text.AttributeSet pAttributeSet) throws
javax.swing.text.BadLocationException
        {
            if (pString == null)
            {
                return;
            }
            if (pOffset 4)
            {
                super.insertString(pOffset, "", pAttributeSet);
            }
            else
            {
                super.insertString(pOffset, pString.toUpperCase(),
pAttributeSet);
            }
        }
    }

    public UpperCaseField(int pColumns)
    {
        super(pColumns);
    }

    protected javax.swing.text.Document createDefaultModel()
    {
        return new UpperCaseDocument();
    }
}

Jak sama nazwa mowi, pole to zamienia wszystkie wspisywane znaki na duze
litery i ogranicza ilosc tekstu
do 5 znakow (co mozna obejsc prze copy-paste). Podobny przyklad jest w
javadoc.
Mozesz teraz analizowac to co dostajesz do metody insertString i
odpowiednio
formatowac tekst
wstawiajac "-" i sprawdzajac czy dostales znak/cyfre. itp. itd.

Pozdrawiam,
Robert Kwolek





Robert Kwolek - 29 Sie 2001, 18:28

Nie wiem czy zostalem dobrze zrozumieny ale chodzi o pole w ktorego
wlasnosciach wprowadze maske np.
##-## i uzytkownik bedzie mogl w to pole wprowadzic dwa znaki numeryczne
 myslnik jest caly czas ) i dwa znaki numeryczne lub jezeli maska bedzie
###
to tylko trzy znaki numeryczne.

Jezeli sluzy do tego celu javax.swing.JPasswordField to gdzie ustawic make
na to pole

pozdrowienia
Andrzej



No to chyba zostales zle zrozumiany :-).
Chodzi ci o cos na podobienstwo pola do wprowadzania IP?
Jesli tak to mozesz skorzystac z JTextField i pokryc metode
createDefaultModel().
Ale moze i tym razem Cie zle nie zrozumialem...

Pozdrowiam,
Robert Kwolek


pobieranie danych z bazy w mysql i wysylanie danych do plikow w javie swing
Problem z różnicami w wyglądzie form i komponentów swing w NetBeans designerze i po uruchomieniu
swing -- zbyt duże odstępy między liniami tekstu
Swing i odswiezanie komponetnow w czasie wykonywania kodu listenera
  • pielegniarki opieka kielce
  • czemu po moim routerze jest getaway a potem
  • kretynskie smsy od roznych reklamodawcow
  • smieszne teksty historie
  • drzewka do kupienia
  • katowice awf fizjoterapia egzaminy
  • java;warcaby
  • tunezyjski aar 1066 1820
  • o symbianie na powaC2 nie czyli
  • Zbieranina wiadomości z for dyskusyjnych || Indeks