java, Java Swing, جاوا, گرافیک در جاوا

JTextArea در جاوا (JTextArea in Java)

JTextArea در جاوا

در این قسمت تیم کدگیت را با آموزش JTextArea در جاوا همراهی کنید. پیش نیاز این آموزش شامل موارد زیر می‌باشد:

  1. شی گرایی در جاوا
  2. Constructor در جاوا
  3. Interface در جاوا
  4. متد در جاوا
  5. JLable در جاوا

Java Swing

Swing قسمتی از کلاس‎های پایه‌ای جاوا بوده و برای طراحی و ساخت نرم‌افزارهای Window Base ساخته شده است. قبل از Swing کتابخانه‌ای به نام AWT بوده است. قابلیت‌هایی مانند Light Weight (کم وزنی) و Customizable بودن، توانسته Swing را برتر از AWT قرار دهد. در این آموزش از کلاس‌های Swing برای ساخت یک JTextArea استفاده می‌کنیم.

JFrame

JFrame در جاوا یک پنجره است که می‌توان در آن Componentهایی مانند Jbutton، JLable، JTextField و …. قرار داد. همچنین میتوان هر کدام از Componentها را در Frame به صورت جدا صدا زده و به آنها دسترسی پیدا کرد. کمپوننت‌های Swing باید حتما به JFrame اضافه شوند.

JTextArea در جاوا

JTextArea در جاوا برای نمایش چند خط متن استفاده می‌شود. همچنین میتوان این خطوط را ویرایش کرد. در این آموزش دو مثال ساده در مورد JTextArea خواهیم زد. مثال اول یک متن ساده را در این کمپوننت نمایش می‌دهیم و در مثال دوم با استفاده از JTextArea یک متن را از کاربر دریافت و تعداد کلمات و حروف آن را شمارش و با JLable نمایش می‌دهیم.

مثال اول JTextArea در جاوا

کد مثال اول JTextArea به صورت زیر می‌باشد:

public class TextAreaExample {
     TextAreaExample() {
          JFrame f = new JFrame();
          JTextArea area = new JTextArea("Welcome to CodeGate");
          area.setBounds(10, 30, 200, 200);
          f.add(area);
          f.setSize(300, 300);
          f.setLayout(null);
          f.setVisible(true);
     }

     public static void main(String args[]) {
          new TextAreaExample();
     }
}

در کد بالا ابتدا یک Frame را ساخته و JTextArea را new کردیم و سپس با استفاده از Constructor یک متن در JTextArea نوشتیم. در ادامه JTextArea را در Frame قرار دادیم.

مثال دوم JTextArea در جاوا

در این مثال از یک JButton و دو JLable علاوه بر JTextArea کمک خواهیم گرفت. کاربر درون JTextArea متنی مینویسد و با کلیک بر روی JButton تعداد کلمات و حروف در Jlableهای ما نمایش داده می‌شود. کد مثال دوم JTextArea در جاوا به صورت زیر است:

public class TextAreaExample implements ActionListener {
     JLabel l1, l2;
     JTextArea area;
     JButton b;

     TextAreaExample() {
          JFrame f = new JFrame();
          l1 = new JLabel();
          l1.setBounds(50, 25, 100, 30);
          l2 = new JLabel();
          l2.setBounds(160, 25, 100, 30);
          area = new JTextArea();
          area.setBounds(20, 75, 250, 200);
          b = new JButton("Count Words");
          b.setBounds(100, 300, 120, 30);
          b.addActionListener(this);
          f.add(l1);
          f.add(l2);
          f.add(area);
          f.add(b);
          f.setSize(450, 450);
          f.setLayout(null);
          f.setVisible(true);
     }

     public void actionPerformed(ActionEvent e) {
          String text = area.getText();
          String words[] = text.split("\\s");
          l1.setText("Words: " + words.length);
          l2.setText("Characters: " + text.length());
     }

     public static void main(String[] args) {
          new TextAreaExample();
     }
}

همانطور که در کد بالا میبینید ابتدا JTextArea و JButton و JLable ها را ساخته ایم سپس آنها را در Frame قرار دادیم. برای کلیک بر روی Button نیز ابتدا ActionListener را به کلاس خود Implements کرده و سپس متد actionPerformed را نوشتیم. درون این متد ابتدا متن JTextArea را خوانده و سپس با استفاده از متد Split و length، تعداد حروف و کلمات متن JTextArea را شمارش کردیم. در انتها نیز با کمک متد  setText  آنها را در JLable نمایش دادیم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *