Úvod do JPasswordField

JPasswordField je komponent Swing a vstupné pole, ktoré užívateľovi uľahčuje zadanie hesla. Pri prihlasovaní na akúkoľvek webovú stránku ako Facebook alebo Gmail ste museli vidieť také pole, ktoré pri zadávaní hesla do zadaného textového poľa zobrazuje „*“ alebo akýkoľvek iný znak. JPasswordField je to isté.

Vyhlásenie Jpasswordfield

public class JPasswordField extends JTextField

Ako vidíte, táto trieda je podtriedou JTextField, zdedí všetky vlastnosti textového poľa plus svoje vlastné funkcie, ako je maskovanie zadaných znakov.

Detaily konštruktora

  • JPasswordField (): Toto je najjednoduchší konštruktor, ktorý vytvára pole s heslom s predvoleným dokumentom, šírkou nulového stĺpca a bez počiatočného textového reťazca (null).
  • JPasswordField (Document document, String txt, int column): Tento konštruktor vytvorí pole hesla so zadaným dokumentom, zadanou šírkou stĺpca a zadaným predvoleným heslom.
  • JPasswordField (int stĺpce): Tento konštruktor vytvorí pole hesla so zadanou šírkou stĺpca.
  • JPasswordField (text reťazca): Tento konštruktor vytvorí pole s heslom so zadaným predvoleným heslom.
  • JPasswordField (text reťazca, int stĺpce): Tento konštruktor vytvorí pole hesla so zadanou šírkou stĺpca a zadaným predvoleným heslom.

Podrobnosti metódy

  • char () getPassword (): Toto je dôležitá a najužitočnejšia metóda triedy JPasswordField, ktorá vracia heslo ako pole znakov zadané v tomto JPasswordField.
  • String getText (): Táto metóda vráti heslo ako reťazec zadané v tomto JPasswordField. Táto metóda je však zastaraná v platforme Java 2 v1.2, nahradená metódou getPassword ().
  • String getText (int offs, int len): Táto metóda vracia časť hesla ako reťazec zadanú v tomto JPasswordField. Táto metóda je však zastaraná v platforme Java 2 v1.2, nahradená metódou getPassword ().
  • void copy (): Táto metóda vyvolá funkciuErrorFeedback o aktuálnom vzhľade a pocite, ktoré iniciuje chybové pípnutie.
  • void cut (): Táto metóda vyvolá funkciuErrorFeedback o aktuálnom vzhľade a pocite, ktoré iniciuje chybové pípnutie.
  • boolean echoCharIsSet (): Táto metóda vracia true, ak je znak nastavený na echoing na tento JPasswordField. Inak nepravdivé.
  • char getEchoChar (): Táto metóda vracia znak, ktorý je nastavený na tento JPasswordField na ozvučenie.
  • void setEchoChar (char c): Táto metóda nastavuje znak echa do tohto poľa hesla.
  • String getUIClassID (): Táto metóda vracia názov triedy vzhľad a dojem, ktorá vykresľuje túto súčasť.
  • protected String paramString (): Táto metóda vracia reťazcové znázornenie tohto hesla.
  • void updateUI (): Táto metóda načíta pripojiteľné používateľské rozhranie tohto poľa pre heslo.
  • AccessibleContext getAccessibleContext (): Táto metóda vráti AccessibleContext spojený s týmto JPasswordField.

Príklad Jpasswordfield

Nižšie je uvedený príklad pre Jpasswordfield:

kód:

package application;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class JPasswordFieldDemo (
public static void main(String() args) (
JFrame app = new JFrame("JPasswordField Demo");
app.setLayout(new GridLayout(4, 0));
app.setSize(400, 400);
JPanel panel1 = new JPanel();
JPanel panel2 = new JPanel();
JPanel panel3 = new JPanel();
JPanel panel4 = new JPanel();
JLabel label = new JLabel("Password : ");
JPasswordField passwordField = new JPasswordField(10);
JButton submit = new JButton("submit");
panel1.add(label);
panel1.add(passwordField);
panel1.add(submit);
JLabel status = new JLabel("Password is : ");
panel2.add(status);
JLabel label2 = new JLabel("Set echo character : ");
JTextField textFieldForEchoChar = new JTextField(5);
JButton setEchoCharButton = new JButton("SetEchoChar");
JLabel statusOfSetEchoChar = new JLabel("Echo character is : " + passwordField.getEchoChar());
panel3.add(label2);
panel3.add(textFieldForEchoChar);
panel3.add(setEchoCharButton);
panel4.add(statusOfSetEchoChar);
app.add(panel1);
app.add(panel2);
app.add(panel3);
app.add(panel4);
app.setVisible(true);
ActionListener actionListener = new ActionListener() (
@Override
public void actionPerformed(ActionEvent e) (
String command = e.getActionCommand();if (command.equals("submit")) (
String password = new String(passwordField.getPassword());
status.setText("Password is : " + password);
)
if (command.equals("SetEchoChar")) (
char echoChar = textFieldForEchoChar.getText().charAt(0);
passwordField.setEchoChar(echoChar);
statusOfSetEchoChar.setText("Echo character set to: " + echoChar);
)
)
);
submit.addActionListener(actionListener);
setEchoCharButton.addActionListener(actionListener);
)
)

vysvetlenie

Toto je jednoduchá aplikácia, v ktorej je zobrazený JPasswordField a jeho funkcie.

  • Na vrchole je JFrame, čo je naša aplikácia.
  • V tomto rámčeku JFrame sú pridané štyri panely.
  • Na prvý panel sa pridá JPasswordField, aby tu mohol užívateľ zadať heslo.
  • Pridá sa aj tlačidlo na odoslanie hesla.
  • Na druhom paneli sa pridá JLabel, ktorý zobrazuje heslo, ktoré zadal užívateľ. Keď používateľ klikne na tlačidlo odoslania na prvom paneli, tento stav sa zmení a zobrazí sa najnovšie heslo.
  • Stav v druhom paneli sa aktualizuje pomocou poslucháča akcií, ktorý sa pridá do tlačidla odoslania.
  • Keď užívateľ zadá heslo, nezobrazí sa v JPasswordField, namiesto toho sa zobrazia znaky echo a heslo sa skryje.
  • K dispozícii je predvolená charakteristika ozveny. Môžeme tiež nastaviť znak echa pre pole s heslom. Teraz to urobíme.
  • Na treťom paneli sa pridá textové pole a tlačidlo. Toto textové pole má brať používateľovi echo41char.
  • Používatelia budú musieť zadať znak a stlačiť tlačidlo a echo char sa nastaví do poľa pre heslo.
  • Na štvrtom paneli môže užívateľ vidieť aktuálny znak echa alebo novo nastavený znak echa v poli hesla. Toto je dosiahnuté použitím JLabel a poslucháča akcií pridaného k tlačidlu na treťom paneli.

Výkon:

1. Toto je aplikácia, v ktorej môže užívateľ zadať heslo, pozri zadané heslo, zmeniť znak echa v poli hesla a vidieť aktuálny znak echa:

2. Teraz užívateľ zadá heslo („12345“) a klikne na tlačidlo Odoslať. Potom je heslo zadané používateľom zobrazené v stave pod poľom pre heslo. V dolnej časti môžete tiež vidieť aktuálnu (predvolenú) echo char v poli hesla:

3. Teraz chce užívateľ zmeniť znak echa v poli pre heslo. Aby sa to dosiahlo, používateľ zadá v druhom textovom poli „*“ a stlačí tlačidlo „SetEchoChar“ a znak echa sa automaticky zmení v poli hesla.

4. Podobne užívateľ nastaví znak echa na „#“:

Záver - Jpasswordfield

JPasswordField je dôležitou súčasťou programu Swing, ktorá umožňuje používateľovi zadávať heslo bez toho, aby ho vizuálne zneškodnil ostatným. Tento súbor je možné použiť na vývoj prihlasovacej a registračnej stránky ľubovoľnej aplikácie. To zvyšuje bezpečnosť aplikácie a spôsobuje, že vyzerajú a cítia sa lepšie. Vývojár tiež môže nastaviť svoj obľúbený znak ozveny!

Odporúčané články

Toto je sprievodca po Jpasswordfield. Tu diskutujeme o Jpasswordfield možno použiť na vývoj log in a prihlásiť stránku akejkoľvek aplikácie. Viac informácií nájdete aj v nasledujúcom článku -

  1. Swing komponenty v Jave
  2. JComponent v Jave
  3. JFrame v Jave
  4. CardLayout v Jave

Kategórie: