tattyan3
@tattyan3 (tatsuji shimo)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

この問題どうすれば、いいのですか?

公開質問状

スクリーンショット 2024-03-03 193115.png

スクリーンショット 2024-03-03 193203.png

終わっても、動き続けているの。

// Class1
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace cyi_syapu_test
{
    internal class Class1
    {
        public class Global    //グローバルclass
        {
            public string My_Variable = "fast value.";

            // 意味は無い

        }

    }
}
// Form1
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using static cyi_syapu_test.Class1;


namespace cyi_syapu_test
{
 
    public partial class Form1 : Form
    {
        string My_Variable = "";
        public Form1()
        {
            InitializeComponent();
           
        }
        private void MainForm_Form1Closing_Click(object sender, FormClosingEventArgs e)
        {
            // アプリケーションを終了する
            Application.Exit();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            label1.Text = "ようこそ C# の世界に。!";
            My_Variable = "it grovaru!";

            string  my_text = label1.Text+"\n"; // label1.Text + "\n";
            string my_path = "./my_module.txt";
            my_text += My_Variable + "\n";
            StreamWriter text_fail;
            text_fail =new StreamWriter(my_path);
            text_fail.Write(my_text);
            text_fail.Close();

            Form2 form2 = new Form2();
            form2.Show();
            Hide();

        }

    }
}
// Form2
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace cyi_syapu_test
{
    public partial class Form2 : Form
    {

        string My_Variable = "";
        public Form2()
        {
            InitializeComponent();            

            string my_path = "./my_module.txt";
            if (File.Exists(my_path) == false) //
            {
                label2.Text = "モジュールはありません。";
            }
            else
            {
                string fast_line = "";
                string str_reed_in;
                string[] sr_arrey_lin;
                StreamReader rs;
                rs = new StreamReader(my_path,Encoding.UTF8);
                str_reed_in = rs.ReadToEnd();//srは配列
                rs.Close();
                sr_arrey_lin = str_reed_in.Split("\n");
                fast_line = sr_arrey_lin[0];
                My_Variable = sr_arrey_lin[1];
                label2.Text = fast_line;

            }

        }
        private void Form2Closing_Click(object sender, FormClosingEventArgs e)
        {


            Close();
            // アプリケーションを終了する
            Application.Exit();
        }

        private void label3_Click(object sender, EventArgs e)
        {
            label3.Text =My_Variable;

            MessageBox.Show("終わります。", "EXIT", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            Form1 form1 = new Form1();
           // main_form1.Show();
            Close();
            form1.Close(); //mainの呼び出しfoam1は最後に
            Application.Exit(); //All End !!

        }

        private static void Form2Closing_Click(object sender, FormClosingEventArgs e, Form1 main_form1)
        {

            MessageBox.Show("きたよ");
            FormWindowState formState = main_form1.WindowState;
            switch (formState)
            {
                case FormWindowState.Normal: //Minimized:Maximized:
                    MessageBox.Show("通常表示");
                    main_form1.Close();
                    Application.Exit();
                    break;
            }

         // throw new NotImplementedException();
           
        }
    }
}

終わった、言わんの、どうすればいいのですか?

2

2Answer

Comments

  1. @tattyan3

    Questioner

    Form1.Designer.csまでも、変えなくてはならなくなり、修復不能になりました。

最終的に、不良品の提供であり、こんな不良品は、使えないが、結論です。

0Like

Comments

  1. どこがどう不良だったのかこの内容ではわからない様な気がしますが……。

  2. @tattyan3

    Questioner

    わたしはねぇ、子供でもわかる現象を書いて、VSにここで、恥をかかせる気はないのです。

  3. 横から失礼します。VSが恥であるかどうかよりも知識の共有できることが知見になるのでは?

  4. @tattyan3

    Questioner

    この問題だけについて書くと、form1をhide()してform2の上のx「Close」buttonを押すと、閉じずに、永遠に動き続けるという問題。実行ファイルにして、2~3つはやっていないが、エディタ上では、閉じない。
    ついでに書くとcomの追加でmediaplayerを入れてもアイテム「部品」に追加されず「デザイナー」が、すべて、表示不能になる。解決策は見つけていない。
    一番腹が立つのは、報告禁止にしたままだという事。報告が要らんのやろけど。

  5. むしろ上記のコードだと Form2Closing_ClickFormClosing に設定しているのであれば Close() され続けるので StackOverflow しませんか?

  6. @tattyan3

    Questioner

    Closing(){//中身が動かないから、何もできないのです。}
    まだ、隠し玉は、持っているが、出さない。

  7. 横から失礼します。

    フォームが破棄 Close されない場合の 2 つの条件は、(1) 複数ドキュメント インターフェイス (MDI) アプリケーションの一部であり、フォームが表示されない場合です。(2) を使用して ShowDialogフォームを表示した場合です。 このような場合は、手動で を呼び出して Dispose 、フォームのすべてのコントロールにガベージ コレクションをマークする必要があります。

    の様な記述がありましたが関係ありますでしょうか?
    (翻訳が悪いのか文章が変な気もします)

  8. @tattyan3

    Questioner

    私が一般的かは、別として、知らない処理を要求されても、出来ない、だし。あなたは、どうですか?原因不明で、動かなった時?

  9. ここら辺も関係ありそうですが、、、
    原因不明な場合は片っ端から調べて見るしか無いですね。
    ごちゃごちゃ失礼しました。

  10. @tattyan3

    Questioner

    遅くまで、ありがとうね。ゆっくり進みます。根性が続かなくなりますから。
    報告さえできれば、内緒で直してくるんだが、報告出来ないとなると、直らんいうことや。

  11. 隠し玉とは何?小出しにする必要あるの?

  12. @tattyan3

    Questioner

    これに関する事では無いのですが、私にとっては重要な事。コミュニティが、入れてくれたら、話しますが、自分で気づかなきゃ製品にはならないって話。これには関係ないし。

  13. 関係ないことを、書く必要はないのては???

  14. @tattyan3

    Questioner

    だから、隠し玉は1個以上あるとして、内容までは言わない。根拠なく言っていないだけでは、あるが。いくつも、出されるといやでしょう?

Your answer might help someone💌