1

写真をwinformにアップロードしてからサムネイルを表示しようとしています。この機能を btnUpload_click メソッドに追加しようとしましたが、PaintEventArgs をイベント ハンドラとして設定できませんでした。これを解決するために、別のメソッドを作成しましたが、その呼び出し方法を知る必要があります。

private void btnUpload_Click(object sender, EventArgs e)
{}

public void getImage(PaintEventArgs ex)
{
    Image.GetThumbnailImageAbort myCallback =
    new Image.GetThumbnailImageAbort(ThumbnailCallback);

    OpenFileDialog open = new OpenFileDialog();
    // image filters
    open.Filter = "Image Files(*.jpg; *.jpeg; *.gif; *.bmp)|*.jpg; *.jpeg; *.gif; *.bmp";
    if (open.ShowDialog() == DialogResult.OK)
    {
        // display image in picture box
        upload = new Bitmap(open.FileName);

        pictureBox1.Image.GetThumbnailImage(114, 108, myCallback, IntPtr.Zero);
        ex.Graphics.DrawImage(upload, 150, 75);
    }
}

ご協力いただきありがとうございます

4

1 に答える 1

1

インスタンスは必要PaintEventArgsありません。Graphicsボタンクリック内で動作するようにコードを変更するだけです:

Image.GetThumbnailImageAbort myCallback =
    new Image.GetThumbnailImageAbort(ThumbnailCallback);

OpenFileDialog open = new OpenFileDialog();

// image filters
open.Filter = "Image Files(*.jpg; *.jpeg; *.gif; *.bmp)|*.jpg; *.jpeg; *.gif; *.bmp";
if (open.ShowDialog() == DialogResult.OK)
{
    // display image in picture box
    upload = new Bitmap(open.FileName);

    pictureBox1.Image.GetThumbnailImage(114, 108, myCallback, IntPtr.Zero);
    this.CreateGraphics().DrawImage(upload, 150, 75);
}
于 2013-09-06T17:35:28.223 に答える