ひとりも見捨てないことを、あきらめない

学校教育、社会教育、数学、技術家庭科、Youtube、EdTech、ICT、プログラミング、その他

ちょっとしたメモのために   02/20 木

 プログラムをデバッグするときに、ちょっとしたデータをその都度確認したいと考える場合があります。統合環境ソフトでもデータの確認は可能なのですが、いちいちプロパティを引っ張り出さなくてはならないので、面倒くさく感じることがあります。

 こういう場合に、「必要なデータを自動的に表示させる」ことができれば楽になりますので、このような機能をプログラムしてみました。あれこれ試行錯誤した結果、次のようなやり方が良さそうだと思ったのでメモしておきます。

 画像と、数字と、文字列を同時に「ちょっと表示」させるためのプログラムです。

void myCheck(Bitmap pic, string ss, int ii)
{
    // フォームを作る
    Form tmp = new Form();

    // 画像の大きさを取得
    int w = pic.Width;
    int h = pic.Height;

    // Label 1 に数字を表示
    Label l1 = new Label();
    l1.Text = ii.ToString();
    tmp.Controls.Add(l1);
    l1.Location = new Point(10, 10);

    // Label 2 に文字を表示
    Label l2 = new Label();
    l2.Text = ss;
    tmp.Controls.Add(l2);
    l2.Location = new Point(100, 10);

    // PictureBox に画像を表示
    PictureBox p1 = new PictureBox();
    p1.Image = pic;
    p1.Size = new Size(w, h);
    tmp.Controls.Add(p1);
    p1.Location = new Point(10, 50);

    // フォーム全体の大きさを調整
    tmp.Size = new Size(w + 50, h + 80);
    // フォーム全体表示位置を調整
    tmp.StartPosition = FormStartPosition.Manual;
    tmp.DesktopLocation = new Point(50, 50);

    // 最後にダイアログとして表示させる
    tmp.ShowDialog();
}


 

f:id:takase_hiroyuki:20200215075141p:plain