<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      MDI應用中的單案例(singleton)窗口

      [摘要]下面的代碼片斷假設你的多文檔應用程序中包含一個toolbar。當你點擊toolBarButton1 按鈕時,將會創建并顯示一個 Patients 子窗口。下面的代碼在單機事件時發生。private ...
      下面的代碼片斷假設你的多文檔應用程序中包含一個toolbar。當你點擊toolBarButton1 按鈕時,將會創建并顯示一個 Patients 子窗口。下面的代碼在單機事件時發生。

      private void toolBar1_ButtonClick(object sender,
      System.Windows.Forms.ToolBarButtonClickEventArgs e)
      {
      // a flag to store if the child form is opened or not
      bool found = false;

      if (e.Button == toolBarButton1)
      {
      // get all of the MDI children in an array
      Form[] charr = this.MdiChildren;

      if (charr.Length == 0) // no child form is opened
      {
      Patients myPatients = new Patients();
      myPatients.MdiParent = this;
      // The StartPosition property is essential
      // for the location property to work
      myPatients.StartPosition = FormStartPosition.Manual;
      myPatients.Location = new Point(0,0);
      myPatients.Show();
      }
      else // child forms are opened
      {

      foreach (Form chform in charr)
      {
      if (chform.Name == "Patients")
      // one instance of the form is already opened
      {
      chform.Activate();
      found = true;
      break; // exit loop
      }
      else
      found = false; // make sure flag is set to
      // false if the form is not found
      }

      if (found == false)
      {
      Patients myPatients = new Patients();
      myPatients.MdiParent = this;
      // The StartPosition property is essential
      // for the location property to work
      myPatients.StartPosition = FormStartPosition.Manual;
      myPatients.Location = new Point(0,0);
      myPatients.Show();
      }
      }
      }
      }
      這樣,就實現了一個單窗口實例的解決方案。



      日韩精品一区二区三区高清