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

كيف اصل لكنترول في فورم مفتوح اصلا ؟

مغلق
بدأه دون سيلفاتور في 27 سبتمبر 2005 · 16 رد · 1,107 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اذا مثلا عندي MDI قورم اسمه start ويحتوي على StatesBar من نوع Public

وفورم للدخول اسمه logen ويحتوي على زر

عند تشغيل الفورم start يقوم تلقائيا بتشغيل الفورم logen

--------------

ماسبق سهل جدا ..!

لكن سؤالي هو :............

كيف استطيع ان اكتب في StatesBar الذي بالفورم start كلمة معينه عند ضغط الزر في الفورم logen ?

مالقيت لها حل ابدا !!

لو عملت :

start s=new start();
s.StatesBar 1.Text="ggggg";

ماراح تنفع لاني عينت لها القيمة new

ممكن تساعدوني فيها ؟

abo_alzobaer@hotmail.com

#2

الحرف الاول في status يجب ان يكون حرف صغير وليس كبير

جرب هذا الكود

start s = new start();
s.statusBar1.Text = "ggggg";
s.MdiParent  = this;
s.Show()

لا تحزن:

إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.

لا تحزن:

فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.

#3
محمد نسمان كتب:
الحرف الاول في status يجب ان يكون حرف صغير وليس كبير

جرب هذا الكود

start s = new start();
s.statusBar1.Text = "ggggg";
s.MdiParent  = this;
s.Show()

عزيزي محمد نسمان

انت لم تفهم قصدي !!

المشكله ليست خطأ بالكود ....!!

المشكله برمجيه ..

اريد ان اصل لكنترول موجوده بفورم مفتوح اصلا ..

كيف ؟

abo_alzobaer@hotmail.com

#4

اعمل loop على النماذج المفتوحة وبعدها لما تلقى النموذج المطلوب غير فيه

      foreach (Form frm in this.MdiChildren)
 	 {
    if (frm.Name=="start")
    {
   	 ((start)frm).statusBar1.Text = "hello";
    }
    
 	 }

لا تحزن:

إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.

لا تحزن:

فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.

#5

السلام عليكم

استاذ محمد انت لم تفهم ما يقصده

ما يقصده انه كان بداخل vb يكتب اسم الفورم ثم اسم الكونترول مباشرة

ولكن هنا تغير الوضع من الممكن ان تعمل الكونترول public على سبيل المثال

كيف تعمل ذلك ؟

اذهب الى شاشة الكونترول نفسه وفي تعريف الكونترول غير private إلى public

وإن شاء الله بيمشي الحال معاك

"إن الذين آمنوا وعملوا الصالحات كانت لهم جنات الفردوس نزلا"

#6

مشكور عزيزي

جاري التجربه

abo_alzobaer@hotmail.com

#7

بفرض وجود 2 forms واحدة اسمها frmParent و الأخرى frmLogin و تريد أن تفتح الثانية من الأولى ثم تغير خصائص الأولى من الثانية

يجب عليك قبل فتح الfrmLogin من frmParent أن تفعل هذا

Dim myForm as New frmLogin
myForm.Owner = Me
myForm.Show

ثم في الfrmLogin تقوم بعمل هذا

Dim myOwner as frmParent = CType(frmParent, me.Owner)
myOwner.StatusBar1.Text = "Whatever

"

طبعاً بال#C لن يكون هناك اختلاف

frmLogin frm = new frmLogin();
frm.Owner = this;
frm.Show();

ثم

frmParent parent = (frmParent) this.Owner;
frmParent.StatusBar1.Text = "Whatever";

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#8
ijh_pro كتب:
السلام عليكم

استاذ محمد انت لم تفهم ما يقصده

ما يقصده انه كان بداخل vb يكتب اسم الفورم ثم اسم الكونترول مباشرة

ولكن هنا تغير الوضع من الممكن ان تعمل الكونترول public على سبيل المثال

كيف تعمل ذلك ؟

اذهب الى شاشة الكونترول نفسه وفي تعريف الكونترول غير private إلى public

وإن شاء الله بيمشي الحال معاك

أخي ijh_pro

هوا ذكر في المشاركة الاول ان ال StatusBar معرف ك Public

اقتباس
اذا مثلا عندي MDI قورم اسمه start ويحتوي على StatesBar من نوع Public

لذلك لم اذكر هذه الخطوة

اما بالنسبة للمشكلة فحلها في المثال الثاني، لانه قد يكون لديه اكثر من فورم شغال ويريد التعديل على احدهم وليس لديه ال reference له، لذلك عليه عمل Loop لجميع الفورم الشغالة ومن ثم التعديل في المطلوب

هذا اذا كنت انا فاهم صح :D

تم تعديل هذه المشاركة بواسطة محمد نسمان في 28 سبتمبر 2005 في 00:25

لا تحزن:

إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.

لا تحزن:

فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.

#9
اقتباس
CODEfrmLogin frm = new frmLogin();
frm.Owner = this;
frm.Show();

ثم
CODEfrmParent parent = (frmParent) this.Owner;
frmParent.StatusBar1.Text = "Whatever";

كلامك يا باشمهندس مظبوط و 100 % :D

بس انا اللى فهمته منه انه مش عاوز ال فورم بتاع login انه يكون محتوى داخل الفورم بتاع mdi

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

اننا نعلن عن متغير داخل الفورم Login من نوع Start و ممكن نخليه internal او public و اعتقد internal كفاية لأننا مش محتاجينة خارج ال namespace بتاعت المشروع

كالتالى

internal Start startForm;

و بعد كدا من الفورم بتاع MDI قبل ما نعرض منه الفورم بتاع login

نكتب الكود التالى

Login form=new Login();
form.startForm=this;
form.show();

ثم لما نحب نوصل للstatusbar بتاع الفورم start نكتب التالى داخل نافذة الفورم Login

startForm.statusBar.Text="العبارة التى تريد كتابتها";

أحمد صلاح

#10

شكرا على تفاعلكم

طلع لي الرسالة التايه

اقتباس
Object reference not set to an instance of an object.

ايش معناها ؟

وكمان ماتعرف على المتغير Start !!

--------------عندي سؤال اخر لو سمحتو

ماذا يقصد بالقوسين التاليين ؟

(frmParent) this.Owner;

وشكرا لكم

تم تعديل هذه المشاركة بواسطة دون سيلفاتور في 28 سبتمبر 2005 في 14:22

abo_alzobaer@hotmail.com

#11

أخي محمد أنا لم أقصده إهانتك والله

بس انا احببت التوضيح لا اكثر

وشكرا

"إن الذين آمنوا وعملوا الصالحات كانت لهم جنات الفردوس نزلا"

#12

أخي ijh_pro

يبدو انك انت الي فهمتني خطأ :)

ردي لم يكن عصبيا، ولم افهمه انه اهانة لي ابدا

انا اخطى واصيب لاني بشر، لكن قمت بالتوضيح لك حسب ما فهمت، وقلت في الاخر

وفي اخر مشاركتي قلت اذا كنت انا فاهم صح وختمت كلامي بضحكة، واسف ان كنت اخطأت

تم تعديل هذه المشاركة بواسطة محمد نسمان في 28 سبتمبر 2005 في 20:15

لا تحزن:

إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.

لا تحزن:

فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.

#13

شكرا على تفاعلكم

طلع لي الرسالة التايه

ايش معناها ؟

وكمان ماتعرف على المتغير Start !!

--------------عندي سؤال اخر لو سمحتو

ماذا يقصد بالقوسين التاليين ؟

(frmParent) this.Owner;

وشكرا لكم

abo_alzobaer@hotmail.com

#14

السلام على من اتبع الهدى ورحمة الله وبركاته

القوسين هما Cast أي تحويل من متغير إلى أصله

أو من متغير إلى متغير آخر من نفس النوع

Name : Ahmed H. Alawady

Web Site : Alawady.info

Email : alawady_ahmed@hotmail.com

Tel : +2 012 345 6808

#15

هذا هوا الكود اللى قلتلك عليه

CallControlFRoma notherForm.rar

أحمد صلاح

#16

:D معلش اخي محمد نسمان برضوا ابناء بلد واحد وقطاع واحد :) :)

"إن الذين آمنوا وعملوا الصالحات كانت لهم جنات الفردوس نزلا"

#17

والله انك ملك يا احمد صلاح !

مللللللللللللللللللك !

abo_alzobaer@hotmail.com

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

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