티스토리 뷰

VS-02분반수업

VSP02(2022-03-23)

choimyeongheon 2022. 3. 31. 00:10

[1] 체크박스

체크박스를 사용하여 폼을 구성하고 값을 받아 출력해보았다.

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

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void checkBox1_CheckedChanged(object sender, EventArgs e)
        {

        }

        private void checkBox2_CheckedChanged(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            string CheckStates = "";
            CheckBox[] cbox = { checkBox1, checkBox2, checkBox3, checkBox4, checkBox5 };
            /*foreach(var c in cbox)
            {
                CheckStates += String.Format("{0} : {1}\n", c.Text, c.Checked);
            }*/
            for(int i = 0; i < cbox.Length; i++)
            {
                CheckStates += String.Format("{0} : {1}\n", cbox[i].Text, cbox[i].Checked);
            }
            MessageBox.Show(CheckStates,"Summary");
            //string summary = string.Format("좋아하는 과일은 :");
            string summary = "좋아하는 과일은 :";
            foreach(var c in cbox)
            {
                if (c.Checked == true)
                {
                    summary += c.Text + " ";  //문자열 더하기 우겨넣기 가능
                }
            }
            MessageBox.Show(summary, "summary");
        }
    }
}

위는 전체 코드이다

private void button1_Click(object sender, EventArgs e)
        {
            string CheckStates = "";
            CheckBox[] cbox = { checkBox1, checkBox2, checkBox3, checkBox4, checkBox5 };
            /*foreach(var c in cbox)
            {
                CheckStates += String.Format("{0} : {1}\n", c.Text, c.Checked);
            }*/
            for(int i = 0; i < cbox.Length; i++)
            {
                CheckStates += String.Format("{0} : {1}\n", cbox[i].Text, cbox[i].Checked);
            }
            MessageBox.Show(CheckStates,"Summary");
            //string summary = string.Format("좋아하는 과일은 :");
            string summary = "좋아하는 과일은 :";
            foreach(var c in cbox)
            {
                if (c.Checked == true)
                {
                    summary += c.Text + " ";  //문자열 더하기 우겨넣기 가능
                }
            }
            MessageBox.Show(summary, "summary");
        }

이 부분은 버튼을 눌렀을 때의 이벤트 코드들이고 

첫째줄에 string타입 checkstate를 빈칸으로 선언해준뒤 cbox를 만들어 checkbox들을 모두 담아준다.

그 후 cbox전체를 탐색하여 checked된 값들을 (딸기 : TRUE)와 같은 식으로 checkstate에 리턴해준다.

그 후 summary라는 타이틀을 가지며 checkstate의 내용을 담은 messagebox를 호출합니다.

그 후 summary를 스트링타입으로 선언하여 check된 cbox의 멤버의 텍스트만 탐색하여 저장해줍니다.

그 후 summary라는 타이틀을 가지며 summary의 내용을 담은 messagebox를 호출합니다.


[2] 라디오버튼

체크박스와 다르게 하나만 선택 가능한 버튼임

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

        private void button1_Click(object sender, EventArgs e)
        {
            string result = "";
            if (RBkorea.Checked)
                result += "국적 : 한국 ";
            else if (RBchina.Checked)
                result += "국적 : 중국 ";
            else if (RBjapan.Checked)
                result += "국적 : 일본 ";
            else
                result += "국적 : 그 외 ";

            if (RBmale.Checked)
                result += "성별 : 남성";
            else
                result += "성별 : 여성";

            MessageBox.Show(result);
        }

    }
}

국적과 성별을 받아 메시지박스로 결과를 출력해주는 코드이다.

일단 폼 디자인은 위와같이 생겼다.

private void button1_Click(object sender, EventArgs e)
        {
            string result = "";
            if (RBkorea.Checked)
                result += "국적 : 한국 ";
            else if (RBchina.Checked)
                result += "국적 : 중국 ";
            else if (RBjapan.Checked)
                result += "국적 : 일본 ";
            else
                result += "국적 : 그 외 ";

            if (RBmale.Checked)
                result += "성별 : 남성";
            else
                result += "성별 : 여성";

            MessageBox.Show(result);
        }

위는 버튼의 이벤트 코드이다

스트링타입 result를 빈칸으로 설정해준 뒤

RB(radiobutton)nation가 체크되어있으면 "국적 : nation"을 리턴해준다

그리고

RBmale이 체크되었으면  남성 RBfemale이면  여성을 리턴해준다.

그 후 메시지박스에 result의 내용을 출력해준다.


[3] 총점,평균계산기

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

        private void button1_Click(object sender, EventArgs e)
        {
            double sum = Convert.ToDouble(textBox1.Text) + Convert.ToDouble(textBox2.Text) + Convert.ToDouble(textBox3.Text);

            double avg = sum / 3;
            //label6.Text = sum.ToString();
            //label7.Text = avg.ToString("0.0");
            textBox4.Text = sum.ToString();
            textBox5.Text = avg.ToString("0.0");
        }
    }
}

총점과 평균을 계산해서 TB에 출력하는 윈폼이다

private void button1_Click(object sender, EventArgs e)
        {
            double sum = Convert.ToDouble(textBox1.Text) + Convert.ToDouble(textBox2.Text) + Convert.ToDouble(textBox3.Text);

            double avg = sum / 3;
            //label6.Text = sum.ToString();
            //label7.Text = avg.ToString("0.0");
            textBox4.Text = sum.ToString();
            textBox5.Text = avg.ToString("0.0");
        }

위는 계산버튼의 코드이다.

폼은 위와같이 구성되어있고

double형태의 sum에 성적입력칸의 세 텍스트박스에 있는 int형 숫자를 double형태로 convert한 값을 더해준다

avg = sum/3을 해 주어 세 과목의 평균값을 저장해준다.

총점 옆의 TB에 sum을 , 평균 옆의 TB에 avg를 소수 첫째자리까지 반올림하여 변환한 값을 스트링 형태로 출력하여준다.

결과입니다.

'VS-02분반수업' 카테고리의 다른 글

VS02(22-04-01)  (0) 2022.04.08
VSP02(22-03-30)  (0) 2022.04.06
VSP02(2022-03-16)  (0) 2022.03.23
VSP02(2022-03-18)  (0) 2022.03.22
VSP02(2022-03-04)  (0) 2022.03.06
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함