c# Áú¹®

ÄĹڠ  
   Á¶È¸ 4704   Ãßõ 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 2416/5700
2014-05   5051800   Á¤ÀºÁØ1
2015-12   1588150   ¹é¸Þ°¡
2020-03   4692   ¸®¿À
2020-03   4692   È¥ÀÚ°¡´Â±æ
2016-04   4692   ÀÓÇöÁØ
2008-11   4692   ÃÖ½ÂÇõ
2016-01   4692   ÇÞ»ìÇѽºÇ¬
2017-06   4692   ¸ùŸÁÖ
2016-02   4692   Ǫ¸¥´Á´ë
2007-06   4692   ÇѸíÈÆ
2007-02   4692   ¼º½Ãâ
2007-09   4692   ±è´öÁØ
2006-12   4692   ±èµ¿ÀÏ
2007-04   4692   Á¶¸íÁø
2016-06   4692   »ßµ¹À̽½ÇÄÀÌ
2016-05   4692   ¿ì·ç¸®·ç
2017-11   4692   ÀüÁ÷P¿¬±¸¿ø
2016-03   4692   2CPUÃÖÁÖÈñ
2018-03   4692   ¹«¾Æ
2014-09   4692   ³ª¿ì¸¶Å©
2014-01   4692   Cheshire
2015-02   4692   ¹Ì¼ö¸Ç