PDA

View Full Version : سوال: مشكل در پنهان كردن فرمها



s_mokhtari
سه شنبه 02 شهریور 1389, 11:35 صبح
با سلام
دوستان من يه فرم دارم كه وقتي روش كليك كرد يه فرم سوال مياد اگه بله رو زد يه فرم تأييد دوم هم ظاهر ميشه ولي مشكلم اينكه وقتي دكمه بله كليك كرد فرم اولي پنهان ميشه در صورتي كه من دستور هايد ندادم ميخوام فرم 1 همچنان ثابت باشه حتي اگه اون دوتا فرم تاييد ظاهر بشه
اينم فايلش
با تشكر:متفکر::متفکر:

mmd2009
سه شنبه 02 شهریور 1389, 12:06 عصر
با سلام

اینو ببین

s_mokhtari
سه شنبه 02 شهریور 1389, 12:25 عصر
با سلام
دوست عزيز فرم آبي‌رنگ چرا زير فرم ا ميره ميخوام اين دو فرم سوال روي فرم ا نشون داده بشن نه پشت فرم 1
ممممممنون:خجالت:

ایمان مدائنی
سه شنبه 02 شهریور 1389, 12:41 عصر
خب دوست عزيز براي نمايش فرمهات جاي استفاده از


.showDialog();
از :



.show();
استفاده كن درست ميشه
موفق باشي

مهدی فرزاد
سه شنبه 02 شهریور 1389, 13:01 عصر
با سلام
در صورتي كه من دستور هايد ندادم ميخوام فرم 1 همچنان ثابت باشه حتي اگه اون دوتا فرم تاييد ظاهر بشه
اينم فايلش
با تشكر:متفکر::متفکر:

سلام
شما دستور Hide دادید!!!!!
پس این که قرمز کردم چیه؟؟؟؟


private void button2_Click(object sender, EventArgs e)
{

if (button2.DialogResult == DialogResult.OK)
{
this.Hide();
Form1 F = new Form1();
F.Hide();

Form3 l = new Form3();
l.ShowDialog();
if (l.j == true)
{
MessageBox.Show("success");
l.j = false;
}

}
}


اینو کدی رو که قرمز کردم پاک کن

درضمن من قصد جسارت ندارم جهت راهنمایی میگم این روشی که انجام دادی زیاد جالب نیست اگه Vs2010 داری بگو یک نمونه برات می فرستم از اون روش استفاده کن

s_mokhtari
سه شنبه 02 شهریور 1389, 13:06 عصر
با سلام
دوست عزيز آخه من ميخوام تا فرم 2 بسته نشده نتونه به فرم 1 دسترسي داشته باشه و اول فرم دومي رو حتمان ببنده بعد بتونه فرم زير يعني فرم ا كليك كنه
ممممممنون:افسرده::افسرده:
--------------------
با سلام
دوست عزيز من منظورم فرمي كه دكمه حذف رو روش گذاشتم توي اون فرم نگفتم پنهان كنه من ويژوال 2008 دارم اگه ميشه كدتونا نشونم بديد و راه بهتر رو راهنمايي كنيد
مممممممنون:خجالت:

با سلام
دوست من آخه من ميخوام تا فرم رو بسته نشده نتونه به فرم زير دسترسي داشته باشه برا همين shodialog گذاشتم
با تشكر:اشتباه:

مهدی فرزاد
سه شنبه 02 شهریور 1389, 13:17 عصر
با سلام
دوست عزيز من منظورم فرمي كه دكمه حذف رو روش گذاشتم توي اون فرم نگفتم پنهان كنه من ويژوال 2008 دارم اگه ميشه كدتونا نشونم بديد و راه بهتر رو راهنمايي كنيد
مممممممنون:خجالت:
سلام مجدد
شما اون hide رو بردار و نتیجه رو ببین

چشم من الانیک نمونه آماده میکنم و ضمیمه میکنم

سلام
من نمونه رو آماده کردم و در انتها ضمیمه کردم
چون 2010 نداری

فقط کافیه فرم هات رو از پروژت پاک کنی و فرم های برنامه من رو Add Existing Item کنی(Shift + Alt + A)
(دقت کن فایل های FormX و FormX.cs و FormX.Designer.cs رو با هم Add کنی)

در طراحی ظاهر فقط Form2 یک Panel اضافه تر از فرم شما داره (بهش اضافه کردم)

اینم کدهاشون


فرم 1

public partial class Form1 : Form
{

public Form1()
{
InitializeComponent();
}

private Form2 _BackForm;

public Form2 BackForm
{
get { return _BackForm; }
set { _BackForm = value; }
}

private void button2_Click(object sender, EventArgs e)
{
Form3 F3 = new Form3();
this.BackForm.ShowNewForm = F3;
F3.BackForm = this.BackForm;
this.Close();
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
this.BackForm.ButtonShow = true;

}
}فرم 2

public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}

public bool ButtonShow
{
set { button1.Visible = value; }
}

public Form ShowNewForm
{
set
{
value.TopLevel = false;
value.Show();
panel1.Controls.Add(value);
}
}


private void button1_Click(object sender, EventArgs e)
{
Form1 frm=new Form1 ();
button1.Visible = false;
frm.TopLevel = false; ;
frm.BackForm = this;
frm.Show();
panel1.Controls.Add(frm);

}
}فرم 3

public partial class Form3 : Form
{

public Form3()
{
InitializeComponent();
}


private Form2 _BackForm;


public Form2 BackForm
{
get { return _BackForm; }
set { _BackForm = value; }
}


private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("success");
this.Close();
this.BackForm.ButtonShow = true;
}
}

s_mokhtari
سه شنبه 02 شهریور 1389, 19:56 عصر
با سلام


دوست عزيز فالتونا ديدم به 2008 تبديل كردم مممممنون ولي من ميخوام فرمي كه دكمه حذف توش هست عوض نشه ثابت بمونه بعد فرم بله خير بياد بعدشم فرم سوم يعني فرم بله خير و فرم سوم داخلش يه پنل بگذارم و عوض بشه چون داخل فرم كه دكمه حذف چيزاي زيادي داخلش بايد بذارم و بايد عوض نشه
مممممممممنون:چشمک:

مهدی فرزاد
سه شنبه 02 شهریور 1389, 21:52 عصر
با سلام





دوست عزيز فالتونا ديدم به 2008 تبديل كردم مممممنون ولي من ميخوام فرمي كه دكمه حذف توش هست عوض نشه ثابت بمونه بعد فرم بله خير بياد بعدشم فرم سوم يعني فرم بله خير و فرم سوم داخلش يه پنل بگذارم و عوض بشه چون داخل فرم كه دكمه حذف چيزاي زيادي داخلش بايد بذارم و بايد عوض نشه
مممممممممنون:چشمک:


کافیه فقط جای اون Panel رو که من توی فرمتون اضافه کردم عوض کنید و چیزهایی رو که می خواید تغییر نکن بیرون پنل بگذارید
اصل مطلب که چه جوری فرمتون به عنوان کنترل به پنل اضافه میشد و چه جوری فرم هاتون با هم ارتباط برقرار میکردن مهم بود طراحی باقیش رو میتونید تغییر بدید
اینو هم ببین