الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال الأسبوع من صن: JTextArea

مغلق
بدأه خالد المصري في 2 ديسمبر 2002 · 5 رد · 938 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

المشكلة

كيف يمكن منع JTextArea من التمدد نتيجة وضع بيانات اثناء زمن التنفيذ

الحل

يكمن الحل فى وضع JTextArea بداخل JScrollPane مما يمكن من اظهار Scroll bars و بالتالى تثبيت حجم منطقة النص كما يلى:-

import java.awt.*;

import javax.swing.*;

import javax.swing.text.*;



public class TestTextArea extends JFrame

 {

  public TestTextArea()

   {

     JPanel panel = new JPanel();

     setContentPane( panel );

     panel.setPreferredSize( new Dimension( 200, 200) );



     JTextArea textArea = new JTextArea( "one two",3, 15 );

     JScrollPane scrollPane = new JScrollPane(textArea );

     panel.add( scrollPane );



     JTextArea textArea2= new JTextArea( "abcd", 2,10 );

     textArea2.setPreferredSize( new Dimension( 50,10 ) );

     panel.add( textArea2 );

   }



     public static void main(String[] args)

       {

         TestTextArea frame = new TestTextArea();

         frame.setDefaultCloseOperation( EXIT_ON_CLOSE );

         frame.pack();

         frame.setVisible(true);

        }

}
#2

يعطيك العافيه اخوي خالد على الكود الحلو

وبصراحة استفدت منه كثير

لكن عندي سؤال

لو كنت ابغى النص الموجود في التكست بوكس بعد مايوصل الحد الاقصى ينزل سطر كما هو موجود حالياً مثلاً في الصندوق اللذي نكتب فيه مشاركاتنا ؟؟

اتمنى انك فهمت قصدي

#3

اولا كل سنة و انت طيب أخ طارق

الحقيقة الفهم داء لم أصب به من قبل ;)

الحقيقة لم افهم السؤال جيدا.

خالد المصرى

#4

وانت بألف خير حبيبي

اقصد انا الصندوق له طول وعرض اوكي

لما المستخدم يكتب الكلام ويتعدى هذا الكلام الطول ينزل مؤشر

الكتابة للسطر الجديد ولا يكمل الكتابة

======

مثال واضح

في اسفل هذي المشاركة فيه رد سريع اوكي

هذا الرد السريع فيه صندوق نكتب فيه المشاركة فلو لاحظت ان

هذا الصندوق نكتب فيه من اليمين لليسار فلما يصل الكلام حتى نهاية

الصندوق من الجهه اليسرى ينزل المؤشر للاسف ليبدأ سطر جديد

#5

أولا أسف جدا على التأخير :)

بالنسبة لمشكلتك فالحل يكمن فى اضافة هذين السطرين الى الكود أعلاه

 textArea.setLineWrap(true);

 textArea.setWrapStyleWord(true);

و بالتالى يصبح الكود كالتالى

import java.awt.*;

import javax.swing.*;

import javax.swing.text.*;



public class TestTextArea extends JFrame

 {

  public TestTextArea()

   {

     JPanel panel = new JPanel();

     setContentPane( panel );

     panel.setPreferredSize( new Dimension( 640, 480) );



     JTextArea textArea = new JTextArea(20, 35 );

     textArea.setLineWrap(true);

     textArea.setWrapStyleWord(true);

     JScrollPane scrollPane = new JScrollPane(textArea );

     panel.add( scrollPane );



     JTextArea textArea2= new JTextArea( "abcd", 2,10 );

     textArea2.setPreferredSize( new Dimension( 50,10 ) );

     panel.add( textArea2 );

   }



     public static void main(String[] args)

       {

         TestTextArea frame = new TestTextArea();

         frame.setDefaultCloseOperation( EXIT_ON_CLOSE );

         frame.pack();

         frame.setVisible(true);

        }

}

خالد المصرى

#6

اهلين اخوي خالد

مشكور يالغالي على ردك:)

واتمنى ما اكون ازعجتك :rolleyes:

هذا الموضوع مغلق.

مواضيع مشابهة