यह पृष्ठ पुर्तगाली से मशीन-अनुवादित है और इसमें त्रुटियाँ हो सकती हैं। पुर्तगाली संस्करण प्रामाणिक है।
टेक्स्ट फ़ील्ड (TextField)
TextField एक एकल-पंक्ति फ़ील्ड है। आवश्यक चीज़ों के लिए fluent API; सूक्ष्म व्यवहार
TextFieldStyle से आता है।
पूर्ण उदाहरण (कॉपी करें, पेस्ट करें और चलाएँ)
package com.exemplo;
import dev.crossfly.ui.*;
import dev.crossfly.ui.layout.*;
import dev.crossfly.ui.style.*; // TextFieldStyle (व्यवहारिक कॉन्फ़िग)
/** चलाने योग्य मुख्य स्क्रीन। launcher (classname) की ओर संकेत करें और चलाएँ: gradlew :lwjgl3:run */
public class MainWindow extends Window
{
@Override
public void onShow() throws Exception
{
super.onShow();
setLayout(new VerticalLayout());
// फ़्लोटिंग लेजेंड वाला नाम फ़ील्ड
TextField nome = new TextField().caption("Nome");
nome.<TextFieldStyle>getStyle().floatingCaption(true);
add(LAY_AUTO, nome);
// दिखाने/छिपाने के बटन वाला पासवर्ड फ़ील्ड
TextField senha = new TextField().caption("Senha");
senha.<TextFieldStyle>getStyle()
.mode(EditMode.PASSWORD)
.passwordToggle(true);
add(LAY_AUTO, senha);
// लेबल जहाँ पढ़ा गया मान प्रदर्शित होगा
Label resultado = new Label("");
add(LAY_AUTO, resultado);
// प्रति-कुंजी कोई callback नहीं है: सबमिट पर getText() पढ़ें
Button enviar = new Button("Enviar");
enviar.onAction(c -> resultado.setText("Nome = " + nome.getText()));
add(LAY_AUTO, enviar);
}
}
नीचे दिए गए स्निपेट केवल मुख्य भाग दिखाते हैं (जो
onShow()के अंदर जाता है)। चलाने के लिए, उन्हें ऊपर दिए गएMainWindowढाँचे में रखें।
बुनियादी उपयोग
TextField nome = new TextField()
.caption("Nome") // फ़्लोटिंग लेजेंड
.text(""); // प्रारंभिक मान
painel.add(LAY_AUTO, nome);
// जब आवश्यकता हो तब मान पढ़ें (प्रति-कुंजी इवेंट नहीं है):
Button enviar = new Button("Enviar");
enviar.onAction(c -> Debug.log("Nome = " + nome.getText()));
कंस्ट्रक्टर और fluent API
| सदस्य | प्रभाव |
|---|---|
new TextField() / new TextField("texto") |
खाली फ़ील्ड / प्रारंभिक मान के साथ |
.caption(String) |
कैप्शन (फ़ोकस करने पर फ़्लोट होता है, यदि floatingCaption) |
.text(String) / setText(String) |
मान सेट करता है |
.leftIcon(Icon) / .rightIcon(Icon) |
किनारों पर आइकन |
.rightIcon(Icon, Action) |
क्लिक करने योग्य आइकन (जैसे: साफ़ करना) |
.keyboard(Keyboard) |
कीबोर्ड का प्रकार (देखें मास्क और कीबोर्ड) |
getText() / getTextWithoutMask() |
मान पढ़ना (मास्क के साथ / बिना) |
clearText() |
साफ़ करना |
फ़्लोटिंग कैप्शन
स्टाइल में सक्षम करें (floatingCaption) — फ़ोकस/भरने पर कैप्शन ऊपर उठता है:
TextField email = new TextField().caption("E-mail");
email.<TextFieldStyle>getStyle().floatingCaption(true);
दिखाएँ/छिपाएँ बटन के साथ पासवर्ड
TextField senha = new TextField().caption("Senha");
senha.<TextFieldStyle>getStyle()
.mode(EditMode.PASSWORD) // अक्षरों को मास्क करता है
.passwordToggle(true); // आँख का आइकन स्वचालित रूप से जोड़ता है
passwordToggle(true) के साथ, दाईं ओर का आइकन दृश्यता को स्वयं टॉगल करता है।
क्रिया आइकन (जैसे: साफ़ करना)
TextField busca = new TextField().caption("Buscar")
.rightIcon(new MaterialIcon(""), c -> busca.clearText()); // "close"
अच्छे तौर-तरीके
- भेजते समय मान को
getText()से पढ़ें; कच्चे अंकों के लिएgetTextWithoutMask()का उपयोग करें। - व्यवहार (
mode,maxLength,floatingCaption) को टाइप किए गएgetStyle()के माध्यम से कॉन्फ़िगर करें (campo.<TextFieldStyle>getStyle()...)। - जब उपयुक्त हो तो स्टाइल में
.maxLength(n)से आकार सीमित करें।
आम गलतियाँ
- एक
onChange/onTextChangedखोजना — यह मौजूद नहीं है; जब आवश्यकता होgetText()पढ़ें। - डेटाबेस में सहेजते समय
getText()(मास्क के साथ) कोgetTextWithoutMask()(बिना) के साथ भ्रमित करना। - कॉम्पोनेंट में
mode/maskसेट करना — वे स्टाइल के सेटर हैं।
यह भी देखें
- मास्क और कीबोर्ड · फ़ोकस और मान्यता · टेक्स्ट क्षेत्र
- कैटलॉग: TextField · संदर्भ: अध्याय 14
क्या यह पृष्ठ उपयोगी था?प्रतिक्रिया के लिए धन्यवाद!