画像ボックスを右クリックすると、コンテキストメニュー項目を使用して、メニューアイテムsaveImageAsが表示されます。画像ボックスに右クリックメニューアイテムを追加する
問題:私は右のピクチャボックスをクリックすると、それは私がsaveImageAsをクリックしたとき、それは私がform_MouseClick()
をヒットする代わりにpictureBox1_click()
の何を使用する必要があります。ここ
private void saveImageAsToolStripMenuItem_Click(object sender, EventArgs e)
{
//what should i use instead of click to hit form_Mouseclick
pictureBox1.Click += form_MouseClick;
pictureBox2.Click += form_MouseClick;
}
にヒットする、saveImageAsを示しています。もし誰かが私が最も感謝してくれるのを助けることができたら。
private void saveImageAsToolStripMenuItem_Click(object sender, EventArgs e)
{
pictureBox1.Click += form_MouseClick;
pictureBox2.Click += form_MouseClick;
}
private void form_MouseClick(object sender, MouseEventArgs e)
{
PictureBox pb = sender as PictureBox;
SaveFileDialog sfd = new SaveFileDialog();
sfd.Filter = "Images|*.png;*.bmp;*.jpg";
if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string filepath = System.IO.Path.GetExtension(sfd.FileName);
}
if(pb != null && sfd.FileName != null)
{
Image im = pb.Image;
SaveImage(im, sfd.FileName);
}
}
private static void SaveImage(Image im, string destPath)
{
im.Save(destPath, System.Drawing.Imaging.ImageFormat.Png);
}
'pictureBox1.Click + = form_MouseClickこれらの行を呼び出して、' 'pictureBox2.Click + = form_MouseClick; 'は、複数のイベントハンドラを同じイベントに追加すると、複数回発生するイベントで発生します。これは避けるべきです。あなたの質問は何ですか –
ありがとう@NilayVishwakarma、私はpictureBox1.Click + = form_MouseClickを呼び出すと、それはマウスのクリックを取っている、私はコンテキストメニュー項目を使用したいSaveimageAsをクリック –
なぜあなたはForm.MouseClickでsavefiledialogを表示していますか? –