কম্পিউটার টিউটোরিয়াল

জাভাতে JTextField-এ ক্যারেক্টার সংখ্যা কীভাবে সীমাবদ্ধ করবেন?

একটি JTextField সবচেয়ে গুরুত্বপূর্ণ কম্পোনেন্টের একটি যা ব্যবহারকারীকে সিঙ্গেল লাইন ফরম্যাটে ইনপুট টেক্সট ভ্যালু দেওয়ার অনুমতি দেয়। ব্যবহারকারী একটি JTextField-এ ইনপুট দিতে পারবে এমন ক্যারেক্টার সংখ্যা সীমাবদ্ধ করা PlainDocument ক্লাস ব্যবহার করে অর্জন করা যায়।

নিচের উদাহরণে, আমরা PlainDocument ক্লাস ব্যবহার করে লজিক বাস্তবায়ন করতে পারি, অতএব আমরা একটি ব্যবহারকারীকে সর্বোচ্চ ১০ ক্যারেক্টার ইনপুট দিতে দিতে পারি, এটি ১০ এর বেশি ক্যারেক্টার ইনপুট দিতে দেবে না।

উদাহরণ

import java.awt.*; 
import javax.swing.*; 
import javax.swing.text.*; 

class JTextFieldLimit extends PlainDocument { 
    private int limit; 
    
    JTextFieldLimit(int limit) { 
        super(); 
        this.limit = limit; 
    } 
    
    JTextFieldLimit(int limit, boolean upper) { 
        super(); 
        this.limit = limit; 
    } 
    
    public void insertString(int offset, String str, AttributeSet attr) throws BadLocationException { 
        if (str == null) 
            return; 
        if ((getLength() + str.length()) <= limit) { 
            super.insertString(offset, str, attr); 
        } 
    } 
} 

public class JTextFieldLimitTest extends JFrame { 
    JTextField textfield; 
    JLabel label; 
    
    public static void main(String[]args){ 
        new JTextFieldLimitTest().GUI(); 
    } 
    
    public void GUI() { 
        setLayout(new FlowLayout()); 
        label = new JLabel("max 10 chars"); 
        textfield = new JTextField(15); 
        add(label); 
        add(textfield); 
        textfield.setDocument(new JTextFieldLimit(10)); 
        setSize(350,300); 
        setLocationRelativeTo(null); 
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        setVisible(true); 
    } 
}

আউটপুট

জাভাতে JTextField-এ ক্যারেক্টার সংখ্যা কীভাবে সীমাবদ্ধ করবেন?

  1. জাভাতে রাউন্ডেড JTextField বাস্তবায়ন

  2. জাভাতে JComboBox-এ আইটেমগুলো সর্ট করা

  3. জাভাতে JTextArea-র ভিতরে লাইন নম্বর কীভাবে প্রদর্শন করবেন?

  4. জাভাতে JTextField-এ ক্যারেক্টার সংখ্যা কীভাবে সীমাবদ্ধ করবেন?