c# Áú¹®

ÄĹڠ  
   Á¶È¸ 5410   Ãßõ 0    

         private void register_Click(object sender, EventArgs e)
        {
            this.Visible = false;
            register frm = new register();
            frm.Show();
        }


이렇게 소스가 짜여있습니다만 (폼의 오너 설정 X)

이렇게하면 폼이 register 로 변경됩니다.


근데 register 의 폼을 닫기버튼을 눌러서 닫으면 폼은 아무것도 안보이는데

프로그램은 실행되고 있습니다.


자식폼을 닫을때 프로그램이 꺼지게 하는법은 없을까요?

ªÀº±Û Àϼö·Ï ½ÅÁßÇϰÔ.
±èµ¿¼öP 2016-11
ÀÚ½ÄÆûÀÇ FormClosed À̺¥Æ®¿¡
Application.Exit();
À̰ŠÇϳª Ãß°¡Çغ¸¼¼¿ä.
ÀÚ½Ä ÆûÀÇ FormClosed À̺¥Æ®¿¡
Application.Exit(); ¸¦ Ãß°¡ÇÏ¸é µÇ±ä ÇÕ´Ï´Ù¸¸...

ÀϹÝÀûÀÎ »ç¿ë ¹æ¹ý°ú ´Ù¸¥ °æ¿ìÀÌ´Ï..
¼³°è°¡ ¹®Á¦°¡ ¾ø´ÂÁö ´Ù½Ã ÇÑ ¹ø È®ÀÎÇØ º¸´Â °ÍÀÌ ÁÁÀ» °Í °°½À´Ï´Ù.
Close À̺¥Æ® °Å½Ç¶§....
 Application.OpenForms["register"].Close();
ÇØ¼­ ¸í½ÃÀûÀ¸·Î ã¾Æ¼­ ´Ý¾Æ ÁÖ½Ã¸é µÇÁö ¾ÊÀ»±î¿ä?
ÄÄ¹Ú 2016-11
°¨»çÇÕ´Ï´Ù.
¹«¾Æ 2016-11
Àú°°À¸¸é..
register frm = null;
private void register_Click(object sender, EventArgs e)
{
  this.Visible = false;
  frm = new register();
  frm.IsRun = true; // register Ŭ·¡½º¿¡ public volatile bool IsRun À» ¹Ì¸® ¸¸µé¾îµÖ¾ß°ÚÁÒ..
  frm.Show();
  this.Close();
}
ÀÌ·¸°Ô ºÎ¸ð ÀÚ½ÅÀ» Á¾·á½Ã۵Ç
ÀÚ½ÅÀÇ Form_Closing À̺¥Æ® ÇÔ¼ö ¾È¿¡´Â frm != null ÀÎ °æ¿ì¿¡ ´ëÇÏ¿© frm.IsRun ÀÌ false °¡ µÇ´ÂÁö ¹Ýº¹¹® ¾È¿¡¼­ Thread.SleepÀ» ½á°¡¸é¼­ È®ÀÎÇØÁÖ°í Á×À»³¯¸¸ ±â´Ù¸®¸é µÇ°ÚÁÒ.
ÀÚ½Ä ÆûÀº Á×À» ¶§ ÀÚ½ÅÀÇ IsRun = false; ¸¦ Çѹø ÇØÁÖ°í Á×À¸¸é ÀÚ½ÄÀÌ Á×°í ±× µÚ ºÎ¸ð°¡ Á×°ÚÁÒ.

¾Æ´Ï¸é.. ÀÚ½ÄÆûÀÌ Á×À» ¶§ ºÎ¸ðÆû ¿¡´Ù°¡ WM_CLOSE ¸¦ ½÷ ÁشٵçÁö.. (ÀÌ ¹æ¹ýÀÌ À§¿¡ ¸»ÇÑ ¹æ¹ý°ú ºñ½ÁÇÑ µí..)


QnA
Á¦¸ñPage 2230/5753
2015-12   1897787   ¹é¸Þ°¡
2014-05   5383285   Á¤ÀºÁØ1
2017-09   4920   ¹Ú¼öÈ«84Æ÷Ç×
2016-12   4920   ¾Æ¸¶µ¥¿ì¾²
2014-12   4920   ÀüÁ÷P¿¬±¸¿ø
2016-06   4920   PLANX
2014-07   4920   bigmaster
2013-12   4920   ZEBE
2007-07   4920   ÀÌÀ±ÁÖ
2016-05   4920   Lucyed
2007-02   4920   ½É±Ô»ó
2013-12   4920   ¹³¹ÙÀÌ
2015-11   4920   ºÎ°¡Æ¼
2014-06   4920   ¹äÇѳ¢
2007-06   4920   ¼ÛÈ­½Ä
2007-01   4920   ±è´ë¿ø
2016-08   4920   Ç®·Îµå½Ã½ºÅÛ
2017-08   4920   VSPress
2019-11   4920   ÄËÆ²¸®12
2014-05   4920   ¹Ì¼ö¸Ç
2022-01   4920   Sikieiki
2020-11   4920   ¼­¿ï»ç¶÷