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

اضافة textfields اثناء عمل البرنامج

بدأه Prof.MnO في 19 نوفمبر 2010 · 10 رد · 410 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

السلام عليكم ورحمة الله وبركاته ...كل عام وانتم بخير وتقبل الله منا ومنكم ... :)

اردت الاستفسار عن كيفية اضافة textfields او اي اضافة اخرى على حسب رغبة المستخدم اي والبرنامج يشتغل ..

RSe15866.jpg

مثلا ) اذا كان لدينا برنامج يطلب ادخال عدد افراد الاسرة وبناء على العدد المدخل يخرج لي textfields لادخال الاسم و radio لاختيار الجنس .. اي اذا وضع عدد الاسرة 4 تخرج له 4 textfields و 4 ratio .

وجدت طريقة وهي ان تضع عدد من textfields وتجعلها مخفية وعلى حسب ادخال المتسخدم نعمل اظهار ولكنها طريقة غير عمليه ..

1-فهل هناك طريقة افضل للاضافة اثناء عمل البرنامج ؟

2- هل يمكنني من وضع textfields وبمجرد كتابة المستخدم فيها تخرج textfields أخرى تحتها مباشرة (اي بدلا من وضع عدد افراد الاسرة) ؟(مثلا عدد الافراد 3 فاكتب في اول حقل فيخرج لي حقل آخر تحته مباشرة فاكتب اسم الثاني فيخرج حقل آخر تحته فاكتب اسم الثالث فيخرج حقل تحته ولكن لا اكتب به شيء ..واخزن اول ثلاث حقول فقط )

اتمنى ان اكون استطعت توضيح مشكلتي ,,,وجزاكم الله خيرا... :)

#2

اعتقد انك بتريد حاجه مثل هذه

DrawTextFieldsWithGridLayout.zip

ان كانت هى فاتمنى ان تفهم كيف تعمل

وتقوم انت بعمل ما يخص برنامجك

بالتوفيق :)

Software Developer
Mahmoudkelany.com


 

#3

يعطيك العافية اخي محمود ,,, تقريبا هذا المطلوب باحاول اعدل على الكود (اجري بعض التجارب)

ولي رجعة اخرى ..

وشكرا على سرعة الاستجابة :)

#4
Prof.MnO كتب:

يعطيك العافية اخي محمود ,,, تقريبا هذا المطلوب باحاول اعدل على الكود (اجري بعض التجارب)

ولي رجعة اخرى ..

وشكرا على سرعة الاستجابة :)

طيب كويس

بس مش تحاول تعدل عليه

حاول تفهمه

وتكتب من الاول علشان تستفاد

بالتوفيق

Software Developer
Mahmoudkelany.com


 

#5

اهلا اخي محمود عدت من جديد :)

الكود الذي وضعته جميل لكن واجهني بعض الاشياء التي لم استطع فهمها ...

myPanel1.setTextFields(Integer.parseInt(colsTextField.getText().trim()),
                Integer.parseInt(rowsTextField.getText().trim()));

هذا الكود يأخذ متغيرين من textfields ويعمل مربعات على عددها ..

لكن لم استطع عمل 3 textfields فوق بعض ,, اي عندما ادخل 3 و 0 لا يعمل لي مربعات ...

الشيء الآخر اذا وضعت 2 و 2 يتكون لدي 4 مربعات..كيف يكنني أخذ البيانات المسجله من textfields ؟

واعتذر عن الاطاله اخي الكريم

#6

هل لو وضعت الكود يكون احسن

لكى تتضح الرؤيه

ويتم التعديل عليه ان امكن ان شاء الله

لانى مش فاهم انت تقصد ايه

اللى فهمه ازاى اخد بيانات من الـ textFields

لكن دا هيتوقف على الكود

دعنا نرى الكود لكى نتمكن من الافتاء براحتنا :D

تم تعديل هذه المشاركة بواسطة Mahmoud Kelany في 20 نوفمبر 2010 في 20:19

Software Developer
Mahmoudkelany.com


 

#7

شوف يالغالي ,,,

f5N75735.jpg

هذه صورة البرنامج ,,في البدايه رقم 1 يدخل المستخدم عدد افراد الاسره لنقل انه ادخل 2 ,,

بعد ان يضع 2 يقوم البرنامج بعمل 2 textfileds ..

مثال اخر اذا ادخل 3 سوف يظهر 3 textfields وهكذا ...

صورة البرنامج عند بداية التشغيل :

Szz76372.jpg

صورة البرنامج اذا ادخل المستخدم 2 :

taQ76372.jpg

صورة البرنامج اذا ادخل المستخدم 3 :

5Hz76372.jpg

هدف البرنامج ادخال اسماء افراد العائلة وبناء على العدد يخرج لي خانات لتعبئتها بالأسماء ..

اتمنى ان المشكلة اتضحت ,,,وشكرا على المتابعة

#8

طبعا انا فاهم دا كله

لكن انا عاوز اطلع على الكود

علشان اقولك اازاى تعرف تحصل على البيانات الموجوده فى كل صف

يعنى ف كل textField وازاى تعرف هو اختار male or female

ان كنت لا تريد عرض الكود فهذه مشكلتك

او يمكنك ارساله على كرساله لى

ان كنت تخاف على الكود

لكن احب اوضح لك ان كثير من الاخوه هنا وضعوا اكواد لبرامج كبيره جدا

بالتوفيق :)

Software Developer
Mahmoudkelany.com


 

#9

:) لا عادي الكود ليس بمشكلة ,,, انا عملت البرنامج ب netbeans ولم اكتب اكواد كثيره

هذا الكود المتكون عندما عملت الشكل(اي ان برنامج netbeans هو الذي كتب الاكواد ) :

package brother;


public class gui extends javax.swing.JFrame {

    public gui() {
        initComponents();
    }

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {

        jLabel1 = new javax.swing.JLabel();
        jTextField1 = new javax.swing.JTextField();
        jLabel2 = new javax.swing.JLabel();
        jRadioButton1 = new javax.swing.JRadioButton();
        jRadioButton2 = new javax.swing.JRadioButton();
        jTextField2 = new javax.swing.JTextField();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jTextField3 = new javax.swing.JTextField();
        jRadioButton3 = new javax.swing.JRadioButton();
        jRadioButton4 = new javax.swing.JRadioButton();
        jLabel5 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        jLabel7 = new javax.swing.JLabel();
        jLabel8 = new javax.swing.JLabel();
        jRadioButton5 = new javax.swing.JRadioButton();
        jRadioButton6 = new javax.swing.JRadioButton();
        jTextField4 = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jLabel1.setText("Family Number :");

        jTextField1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextField1ActionPerformed(evt);
            }
        });

        jLabel2.setFont(new java.awt.Font("Tahoma", 1, 18));
        jLabel2.setText("Family Information");

        jRadioButton1.setText("Male");
        jRadioButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jRadioButton1ActionPerformed(evt);
            }
        });

        jRadioButton2.setText("Female");

        jLabel3.setText("Name :");

        jLabel4.setText("1-");

        jRadioButton3.setText("Female");

        jRadioButton4.setText("Male");
        jRadioButton4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jRadioButton4ActionPerformed(evt);
            }
        });

        jLabel5.setText("2-");

        jLabel6.setText("Name :");

        jLabel7.setText("3-");

        jLabel8.setText("Name :");

        jRadioButton5.setText("Female");

        jRadioButton6.setText("Male");
        jRadioButton6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jRadioButton6ActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGap(62, 62, 62)
                                .addComponent(jLabel2))
                            .addGroup(layout.createSequentialGroup()
                                .addContainerGap()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addComponent(jLabel1)
                                    .addGroup(layout.createSequentialGroup()
                                        .addComponent(jLabel4)
                                        .addGap(18, 18, 18)
                                        .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)))
                                .addGap(18, 18, 18)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jTextField2)
                                    .addComponent(jTextField1, javax.swing.GroupLayout.DEFAULT_SIZE, 89, Short.MAX_VALUE))))
                        .addGap(6, 6, 6))
                    .addGroup(layout.createSequentialGroup()
                        .addContainerGap(194, Short.MAX_VALUE)
                        .addComponent(jRadioButton1)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jRadioButton2)
                .addContainerGap(7, Short.MAX_VALUE))
            .addGroup(layout.createSequentialGroup()
                .addGap(22, 22, 22)
                .addComponent(jLabel5)
                .addGap(18, 18, 18)
                .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(jTextField3, javax.swing.GroupLayout.DEFAULT_SIZE, 88, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jRadioButton4)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jRadioButton3)
                .addContainerGap())
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addGap(22, 22, 22)
                .addComponent(jLabel7)
                .addGap(18, 18, 18)
                .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(jTextField4, javax.swing.GroupLayout.DEFAULT_SIZE, 88, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jRadioButton6)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jRadioButton5)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jLabel2)
                .addGap(28, 28, 28)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel1)
                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(36, 36, 36)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jRadioButton1)
                    .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel3)
                    .addComponent(jLabel4)
                    .addComponent(jRadioButton2))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jRadioButton3)
                    .addComponent(jRadioButton4)
                    .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel6)
                    .addComponent(jLabel5))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jRadioButton5)
                    .addComponent(jRadioButton6)
                    .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel8)
                    .addComponent(jLabel7))
                .addContainerGap(119, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>

    private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // TODO add your handling code here:
    }                                           

    private void jRadioButton1ActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
}

    private void jRadioButton4ActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
}

    private void jRadioButton6ActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
}

    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new gui().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JRadioButton jRadioButton1;
    private javax.swing.JRadioButton jRadioButton2;
    private javax.swing.JRadioButton jRadioButton3;
    private javax.swing.JRadioButton jRadioButton4;
    private javax.swing.JRadioButton jRadioButton5;
    private javax.swing.JRadioButton jRadioButton6;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTextField jTextField2;
    private javax.swing.JTextField jTextField3;
    private javax.swing.JTextField jTextField4;
    // End of variables declaration

}

وهذا هو الكود اخي الكريم

#10

اخى الكريم

فين اللى انت قومت بتنفيذه بناء على المثال اللى انا اعطيته ليك

وقولت ان انا نفذته ولم برسله مثلا 3 بيظهر لى 3 صفوف لادخال البياانات

دا مفيش فيه اى حاجه خالص

مش دا اللى المفروض حضرتك تحطه

لو حضرتك بتهزر انا مش فاضى للهزار

سلام عليكم

Software Developer
Mahmoudkelany.com


 

#11

وعليكم السلام ورحمة الله وبركاته ..

استاذي الكريم ,,, اعتذر عن سوء الفهم ,,و لست اهزر لاني اتيبت الى هنا للتعلم ..

هذا التعديل الذي عملته لنفس الكود الذي وضعته :

 myPanel1.setTextFields(3,0);
        myPanel1.repaint();
        myPanel1.setVisible(false);
        myPanel1.setVisible(true);

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