HIK Elektronikus Felsőoktatási Tankönyv- és Szakkönyvtár
A Kempelen Farkas Felsőoktatási Digitális Tankönyvtár/vagy más megjelenítő által közvetített digitális tartalmat a felhasználó a szerzői jogról szóló 1999. évi LXXVI. tv. 33. paragrafus (4) bekezdésében meghatározott oktatási, illetve tudományos kutatási célra használhatja fel. A felhasználó a digitális tartalmat képernyőn megjelenítheti, letöltheti, arról elektronikus adathordozóra vagy papíralapon másolatot készíthet, adatrögzítő rendszerében tárolhatja. A Kempelen Farkas Felsőoktatási Digitális Tankönyvtár/vagy más megjelenítő weblapján található digitális tartalmak üzletszerû felhasználása tilos, valamint kizárt a digitális tartalom módosítása és átdolgozása, illetve az ilyen módon keletkezett származékos anyag további felhasználása.

16.36.2. Modális és nem modális formok

A saját formok megjelenítésénél két lehetőség között választhatunk. A Show() metódus megjeleníti a formot, a visible tulajdonságának true-ra állításával. A form megjelenik, de nem birtokolja a fokuszt kizárólagosan, hanem akár más form, akár a hívó form újra aktivizálható. Így ha nem ellenőrizzük programból, akár több ugyanolyan form is megjeleníthető. Erre látunk egy példát az következő képen.

A példaprogramban a ’Nem modális’ gombra kattintva érhetjük ezt el.

frmKetto frmK = new frmKetto();

frmK.Show();

Példányosítás után megjelenítjük a formunkat.

Ha a másik lehetőséget választjuk, akkor a ShowModal() metódust kell használnunk. Ekkor a formunk egy dialógus boxként jelenik meg, amelyik kizárolagosan birtokolja a fókuszt.

Nem aktiválhatjuk az őt hívó formot, vagy más, a programohoz tartozó, és látható formot sem. Ennek a metódusnak van visszatérési értéke, ami egy DialogResult példány. Ennek felhasználásával kiértékelhetjük, hogy melyik nyomógomb segítségével zárta be az ablakot a felhasználó.

A megjelenítésre példa, ha a ’Modális’ gombra kattintunk.

frmKetto frmK = new frmKetto();

frmK.ShowDialog();

Ha szeretnénk használni a kiértékelés adta lehetőséget is, akkor a megjelenő formon lévő gombok tulajdonságai közül a DialogResult értéket állítsuk be a nekünk megfelelőre, majd a hívó helyen a megjelenítés köré szervezzünk egy vizsgálatot.

frmKetto frmK = new frmKetto();

DialogResult dr = new DialogResult();

dr = frmK.ShowDialog(this);

if (dr == DialogResult.Cancel)

MessageBox.Show("Mégse gombbal zártad" ,"fejléc" ,MessageBoxButtons.OK);

else

if (dr == DialogResult.OK)

MessageBox.Show("Rendben gombbal zártad","fejléc",MessageBoxButtons.OK);