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

كيف اقوم بإخفاء form من كلاس غير كلاس اللي موجود

مغلق
بدأه ^ سراب الليل ^ في 16 ديسمبر 2005 · 5 رد · 571 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أخواني الكرام انا لما أبغى أسوي form

أقوم أولاً بإنشاء كلاس وأسوي فيه النافذة أو الفورم

ثم أقوم بإنشاء Object من النافذة في كلاس آخر و أعرض الفورم

مثل كذا

الكلاس الأول اللي سويت فيه الفورم WindowFrame

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

public class WindowFrame extends JFrame
{
    private JLabel lbl_Name;
    private JTextField txt_Name;

    public WindowFrame()
    {
         // The Title
         super( "Main Window" );
         // Set The Layout To FlowLayout
         setLayout( new FlowLayout() );
         // the text inside the First Label
         lbl_Name = new JLabel( "Write Your Name :" );
         // width for the  First TextField
         txt_Name = new JTextField(10);

         // add to Layout to show it
         add(lbl_Name);
         add(txt_Name);
     }
}

الكلاس الثاني اللي فيه main اسمه WindowMain

public class WindowMain
{
       public static void main ( String args[])
	{
  WindowFrame win= new WindowFrame();
  win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  // Size of The Window
  win.setSize(300,400);
  // Show The Window
  win.setVisible( true );
  // Center The Window
  win.setLocationRelativeTo(null);

	}
}

بس أنا سويت برنامج ثاني فيه 3 كلاسات

الكلاس الأول فيه ال main وأقوم بإنشاء أوبجكت من الفورم اللي راح يبدا التشغيل

يعني ينشأ أوبجكت من الكلاس الثاني وفيه نموذج و Buttons لما يضغط على زر تفتح النافذة الثانية اللي من الكلاس الثالث

كيف اقوم بإخفاء النموذج الأول ؟ لأنه في كلاسين مو من نفس الكلاس والمشكله مايقدر يتعرف عليه

:wacko:

الأسئلة المطروحة :

1- كيف أقوم إخفاء نموذج من كلاس آخر ؟

2- كيف أقوم إنشاء نموذجين أو ثلاثة في نفس الكلاس ؟

3- ماهي أفضل طريقة لإنشاء النماذج ؟

4- كيف أقوم بإلغاء خاصية تكبير وتصغير النافذة عشان تصير ثابتة

مصطلحات : ( النموذج = الفورم = frame = النافذة :lol: )

إعذروني أن كان عندي أي خطأ ونبي نتعلم منكم وبإنتضار الكرماء B)

تحياتي أخوكم سراب الليل ;)

تم تعديل هذه المشاركة بواسطة ^ سراب الليل ^ في 16 ديسمبر 2005 في 13:53

#2

4- كيف أقوم بإلغاء خاصية تكبير وتصغير النافذة عشان تصير ثابتة

تم إيجاد الحل

عن طريق

win.setResizable(false);
#3

للرفع ,. وينكم ياشباب

#4

راجع البرنامج التالي بشفرته:

/index.php?showtopic=80358

#5

أخوي أبومازن مشكور على ردك يالغالي

بالنسبة للبرنامج quiz حاولت أني أفهمه ولا قدرت أخوي بالنسبة لي جداً صعب انا لسا مبتدئ جداً

ودي بس أفهم بطريقه بسيطه كيف أني أضيف نافذتين في كلاس واحد وأضع في كل وحده button و label

انا عرفت أضيف نافذتين بكلاس واحد بهالطريقه

JFrame frame1 = new JFrame("frame1");
  frame1.setSize(300,400);
  frame1.setLocationRelativeTo(null);
  frame1.show();
  
  JFrame frame2 = new JFrame("frame1");
  frame2.setSize(300,400);
  frame2.setLocationRelativeTo(null);
  frame2.show();

بس حاولت أني أضيف لكل نافذة button أو Label عجزت

إذا ماعليك أمر ودي أعرف كيف تضيف في وسطها ويكون frame2 فعال يعني تقدر تستخدمه و الـ frame1 تقدر تشوفه بس ماتقدر تستخدمه يعني مو فعال

مثل بعض البرامج لما تفتح (خصائص) يصير البرنامج شغال بس ماتقدر تشتغل عليه لازم تسكر أول نافذة ( الخصائص) ثم يرجعك للنافذة الرئيسية

واتمنى تساعدوني , ألف شكر ..

#6

والله كنت اتوقع مساعده منكم هذا وهي فكره بسيطه ماحد ساعدني وأكرر شكري للأخ أبو مازن بس مافادني كثير

انا بعد البهذله أخيراً عرفت كيف أسوي اكثر من frame في نفس الكلاس عن طريق هذا الكود

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

public class frames
{
	public static void main (String args[])
	{
  
  JLabel lbl1 = new JLabel("Hello");
  JLabel lbl2 = new JLabel("World");
  
  
  JPanel panel = new JPanel();
  panel.setLayout( new GridLayout( 2, 1 ,10 ,10 ) );
  panel.setBorder(BorderFactory.createEmptyBorder(
                                        10, //top
                                        10, //left
                                        10, //bottom
                                        10) //right
                                        );
  panel.add(lbl1);
  panel.add(lbl2);
  
  JFrame frame1 = new JFrame("frame1");
  
  
  
  frame1.getContentPane().add(panel, BorderLayout.CENTER);
  frame1.setSize(300,400);
  frame1.setLocationRelativeTo(null);
  
	}
}

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…