lostyazilim
tr.link

C# Açık Olan Formun Tekrar Açılması

12 Mesajlar 16.379 Okunma
lstbozum
tr.link

PorFavorDama PorFavorDama WM Aracı Kullanıcı
  • Üyelik 20.01.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek -
  • Konum Adana
  • Ad Soyad B** K**
  • Mesajlar 511
  • Beğeniler 152 / 44
  • Ticaret 0, (%0)
ÇÖZÜLDÜ CEVAP SON MESAJDA

Merhaba arkadaşlar,

C# ta butona bastığımda ;


Form2 k = new Form2();
k.Show();


yukarıdaki şekilde form oluşturup açıyorum fakat tekrar butona bastığımda açık olan k formunun üzerine bir form daha açılıyor . Ben bunu nasıl engelleyebilirim ? - aynı form üzerinde çalışmak istiyorum yani - Ve 2. kez butona basıldığında k formu kapanıp tekrar yeniden açılabilir ya da kapanıp tekrar açılmak yerine işlem k formu üzerinde tekrarlanıp sonuçlar k formunada bastırılabilir.

Teşekkür ederim.
 

 

wmaraci
reklam

OguzEREN OguzEREN MustafaKemalAtatürk Kullanıcı
  • Üyelik 15.10.2012
  • Yaş/Cinsiyet 30 / E
  • Meslek Computer Engineering
  • Konum İzmir
  • Ad Soyad O** E**
  • Mesajlar 216
  • Beğeniler 54 / 61
  • Ticaret 0, (%0)
1 yıldır pek uğraşmıyorum ama load kısmında genel bir değişken tanımla false değerini ver.
Sonra butona bastığında değeri true olur.
tabi bu arada
if(durum==false)
{
Form2 k = new Form2();
k.Show();
}
bu şekilde düzelt
açtığın formun close olayınada durum=false; yaparsın gayet güzel çalışır. :)
 

 

A good friend would give you the shirt off his back.

PorFavorDama PorFavorDama WM Aracı Kullanıcı
  • Üyelik 20.01.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek -
  • Konum Adana
  • Ad Soyad B** K**
  • Mesajlar 511
  • Beğeniler 152 / 44
  • Ticaret 0, (%0)

iskorpita adlı üyeden alıntı

1 yıldır pek uğraşmıyorum ama load kısmında genel bir değişken tanımla false değerini ver.
Sonra butona bastığında değeri true olur.
tabi bu arada
if(durum==false)
{
Form2 k = new Form2();
k.Show();
}
bu şekilde düzelt
açtığın formun close olayınada durum=false; yaparsın gayet güzel çalışır. :)


hocam 1. formun load kısmında mı tanımlayacağım değişkeni ? yoksa açtığım yeni formun load kısmında mı ? Bir de benim anlamadığım formu önce tanımlamadan nasıl onunla ilgili bir veriyi sorgulayabiliriz ki hocam yani eğer bool değerini form2 de tanımlayacaksak ? Yani durum bool'u eğer form2 de olacaksa öncelikle form2 yi tanımlamalıyız. Yardımcı olursanız sevinirim, teşekkür ederim :)

Çözüm :



Hocam çözümü buldum aşağıdaki şekilde olacakmış .


Form2 k;
private void button2_Click(object sender, EventArgs e)
{


if(k == null || k.IsDisposed)
{
k = new Form2();
k.Show();
}
else
{
MessageBox.Show("zaten açık");

}
}



Teşekkür ederim yardımlarınız için :)
 

 

enoua enoua www.enderaric.com Kullanıcı
  • Üyelik 23.01.2015
  • Yaş/Cinsiyet 33 / E
  • Meslek Bilgisayar Mühendisi
  • Konum İstanbul Anadolu
  • Ad Soyad E** A**
  • Mesajlar 227
  • Beğeniler 45 / 35
  • Ticaret 0, (%0)
açık formları isimlerini aşağıdaki metoda göndererek test edebilirsiniz. Eğer true dönerse form açıktır.

private bool CheckOpened(string name)
{
FormCollection fc = Application.OpenForms;

foreach (Form frm in fc)
{
if (frm.Text == name)
{
return true;
}
}
return false;
}
PorFavorDama

kişi bu mesajı beğendi.

www.enderaric.com
Skype : enoua_engineer
Bilgisayar Mühendisi
wmaraci
wmaraci

PorFavorDama PorFavorDama WM Aracı Kullanıcı
  • Üyelik 20.01.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek -
  • Konum Adana
  • Ad Soyad B** K**
  • Mesajlar 511
  • Beğeniler 152 / 44
  • Ticaret 0, (%0)

enoua adlı üyeden alıntı

açık formları isimlerini aşağıdaki metoda göndererek test edebilirsiniz. Eğer true dönerse form açıktır.

private bool CheckOpened(string name)
{
FormCollection fc = Application.OpenForms;

foreach (Form frm in fc)
{
if (frm.Text == name)
{
return true;
}
}
return false;
}


Teşekkür ederim bu da alternatif bir çözüm yolu olmuş :)
 

 

enoua enoua www.enderaric.com Kullanıcı
  • Üyelik 23.01.2015
  • Yaş/Cinsiyet 33 / E
  • Meslek Bilgisayar Mühendisi
  • Konum İstanbul Anadolu
  • Ad Soyad E** A**
  • Mesajlar 227
  • Beğeniler 45 / 35
  • Ticaret 0, (%0)

PorFavorDama adlı üyeden alıntı

Teşekkür ederim bu da alternatif bir çözüm yolu olmuş :)


Bu mdi formlarda çok işe yarayan bir sistemdir.
 

 

www.enderaric.com
Skype : enoua_engineer
Bilgisayar Mühendisi

PorFavorDama PorFavorDama WM Aracı Kullanıcı
  • Üyelik 20.01.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek -
  • Konum Adana
  • Ad Soyad B** K**
  • Mesajlar 511
  • Beğeniler 152 / 44
  • Ticaret 0, (%0)

enoua adlı üyeden alıntı

Bu mdi formlarda çok işe yarayan bir sistemdir.


Peki hocam Mdi hakkında pek bir bilgim yok fakat internetten biraz araştırmıştım. Tam olarak farkı nedir bu benim ilk yaptığım işlemden Mdi in farkı yani ?
 

 

enoua enoua www.enderaric.com Kullanıcı
  • Üyelik 23.01.2015
  • Yaş/Cinsiyet 33 / E
  • Meslek Bilgisayar Mühendisi
  • Konum İstanbul Anadolu
  • Ad Soyad E** A**
  • Mesajlar 227
  • Beğeniler 45 / 35
  • Ticaret 0, (%0)

PorFavorDama adlı üyeden alıntı

Peki hocam Mdi hakkında pek bir bilgim yok fakat internetten biraz araştırmıştım. Tam olarak farkı nedir bu benim ilk yaptığım işlemden Mdi in farkı yani ?


http://enderaric.com/csharp-mdi-form-ve-menu-strip-kullanimi-form-icinde-form-s61.html
PorFavorDama

kişi bu mesajı beğendi.

www.enderaric.com
Skype : enoua_engineer
Bilgisayar Mühendisi

PorFavorDama PorFavorDama WM Aracı Kullanıcı
  • Üyelik 20.01.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek -
  • Konum Adana
  • Ad Soyad B** K**
  • Mesajlar 511
  • Beğeniler 152 / 44
  • Ticaret 0, (%0)


Teşekkür ederim hocam şimdi anladım bu da çok kullanışlı geldi ileriki projelerimde kullanabileceğim bir alternatif daha öğrenmiş oldum :)
 

 

enoua enoua www.enderaric.com Kullanıcı
  • Üyelik 23.01.2015
  • Yaş/Cinsiyet 33 / E
  • Meslek Bilgisayar Mühendisi
  • Konum İstanbul Anadolu
  • Ad Soyad E** A**
  • Mesajlar 227
  • Beğeniler 45 / 35
  • Ticaret 0, (%0)

PorFavorDama adlı üyeden alıntı

Teşekkür ederim hocam şimdi anladım bu da çok kullanışlı geldi ileriki projelerimde kullanabileceğim bir alternatif daha öğrenmiş oldum :)

Benim bunu kullanarak yaptığım bir projem iki doğalgaz çevrim santrali şantiyesinde 20şer kişinin bir ortak kullandığı bir sistemle kullanılıyor. oldukça kullanışlı. Ayrıca dağınıklığı çok güzel önlüyor
 

 

www.enderaric.com
Skype : enoua_engineer
Bilgisayar Mühendisi
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al