3

サイズと期間を制御して、フォームにアニメーション画像を表示するにはどうすればよいですか?

私はこのようなことを試しました:

private void AnimImage()
{
    PicBox.Enabled = true;
    PicBox.Visible = true;                
    System.Threading.Thread.Sleep(5000);
    PicBox.Visible = false;
    PicBox.Enabled = false;
}
4

3 に答える 3

8

フォームにアニメーション イメージを表示するには、次の手順を実行します。

1.)Drop a PictureBox on your Form.

2.)In the Properties Window of designer,change the image property so it contains the path to your image.

3.)Resize it as per your needs.

以上で、プロジェクトを実行してみます。例外がスローされなければ、PictureBox で画像がアニメーション表示されます。
画像を変更したい場合は、プロジェクトの実行中にいつでも、次のステートメントを使用してください。

pictureBox1.Load("Path to a new image");//Assuming you haven't renamed the PictureBox.

さらに、手作業でやりたい場合は、読んでください。

private void DisplayImage()
{
    PictureBox pictureBox1=new PictureBox();
    pictureBox1.Location=new Point(Use appropriate values to place the control);
    this.Controls.Add(pictureBox1);
    pictureBox1.Load("Path to a image to display");
}

PictureBox を表示したくない場合は、この方法で、他のユーザーが言ったように、visible プロパティを false に設定します。

pictureBox1.Visible=false;

それを元に戻すには、以下のコードを使用します。

pictureBox1.Visible=true;

アップデート :

画像を 5 秒間だけ表示するには、次のようにします。

Drop a Timer on your Form.

Set its Interval property to 5000 Milliseconds.

Create a new Event for its Tick Event (locate Tick event in Events Window and double click it).

Next modify DisplayImage() so it looks like :

private void DisplayImage()
{
    timer1.Start();
    PictureBox pictureBox1=new PictureBox();
    pictureBox1.Location=new Point(Use appropriate values to place the control);
    this.Controls.Add(pictureBox1);
    pictureBox1.Load("Path to a image to display");
}

Next define an integer field(outside all functions) named count,like this;

private int count=0;

Now modify timer1_Tick() event so it looks like below;

private void timer1_Tick(object sender, EventArgs e)
{
    count++;
    if (count == 5)
    {
        SourcePictureBox.Image = null;
        count = 0;
    }
}

それは仕事をするべきです。他に何かあれば、私に知らせてください。

于 2013-08-31T15:12:14.620 に答える
1

フォームにピクチャ ボックスを追加し、ピクチャ ボックスに .gif 画像を追加します。フォームのロード中に、ピクチャ ボックスの可視性を true にします。

ロード時にピクチャボックスが有効になっていることを確認してください。そうしないと、Windows フォームに画像のアニメーションが表示されません。

于 2013-08-31T14:47:49.327 に答える
0

ソリューション エクスプローラーでフォームを開き、プロジェクト名を開き、プロパティを開き、リソースを右クリックして追加します。.Gif 画像をドラッグし、有効に設定して保存します。

pictureBox を追加し、画像を Gif として設定します (バックグラウンド画像でないと機能しません) ドッキングしないと、タイマーがリセットされるため、GIF がループします。

タイマーを追加し、5000 (5 秒) に設定して有効にします。

画像ボックスをダブルクリックして入力します

pictureBox1.Visible = false;  (assuming you have not renamed your picturebox) (NOTE this is a back up encase the timer fails)

フォームに戻り、タイマーをダブルクリックして、pictureBox1.Visible = false; を追加します。timer1.Stop(); (ロード時にタイマーが開始するのを防ぎます)

時間になると画像が閉じます(閉じていない場合はクリックしてください)

初期化が書き込まれたプライベート void のボタン クリックで Gif を開始する必要がある場合は、pictureBox1.Visible = false; を追加します。

ボタンを追加し、次のコードを button1_click に追加します

pictureBox1.Visible = true; Timer1.Start(); (これは、ボタンのクリック時にタイマーを開始するために使用されるコードです) ここにコードを入力してください

これによりループ エラーが発生する場合、つまり gif が非表示にならない場合は、単純に timer.Stop(); と入力します。picturebox_clickで。

于 2015-09-05T21:43:42.987 に答える