C# 강좌 : 제 7강 - SaveFileDialog & OpenFileDialog

   

프로젝트 구성

1 도구상자에서 SaveFileDialog, OpenFileDialog, PictureBox, MenuStripForm1에 생성합니다. 위의 이미지와 같이 배치합니다.

test

이미지 다운로드

2 속성을 다음과 같이 설정합니다.

  1. PictureBox

    • Size : 200, 200
    • SizeMode : StretchImage
  2. MenuStrip

    • Text : 파일
    • Text : 열기
    • Text : 저장
  • Tip : MenuStrip을 이용하여 프로그램의 메뉴바를 만들 수 있습니다. Button과 동일한 기능을 낼 수 있습니다.

MenuStrip에서 열기 메뉴를 더블클릭하여 이미지 파일을 불러올 수 있게 합니다.

private void 열기ToolStripMenuItem_Click(object sender, EventArgs e)
{
  if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
  {
    pictureBox1.Load(openFileDialog1.FileName);
  }
}
openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK

openFileDialog에서 OK버튼을 누를경우 실행됩니다.

pictureBox1.Load(openFileDialog1.FileName);

그 후, pictureBox1에 openFileDialog를 통해 불러온 파일 이름으로 불러옵니다.

3

다음과 같이 이미지가 불러오게 됩니다. 그 다음, 저장 메뉴를 더블클릭합니다.

private void 저장ToolStripMenuItem_Click(object sender, EventArgs e)
{
    DialogResult result = saveFileDialog1.ShowDialog();
    if (result == DialogResult.OK)
    {
        pictureBox1.Image.Save(saveFileDialog1.FileName);
    }

}

ShowDialog()를 변수형태로 저장할 수 있으며 이미지를 불러오는 방식과 동일하게 이미지를 저장할 수 있습니다.

코드

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 test
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void 열기ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                pictureBox1.Load(openFileDialog1.FileName);
            }
        }

        private void 저장ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DialogResult result = saveFileDialog1.ShowDialog();
            if (result == DialogResult.OK)
            {
                pictureBox1.Image.Save(saveFileDialog1.FileName);
            }
        }
    }
}


도움이 되셨다면 광고 클릭 부탁드립니다.

⤧  Next post C# 강좌 : 제 8강 - Timer ⤧  Previous post C# 강좌 : 제 6강 - PictureBox & Graphics