목록설문조사 결과산출 (5)
JY Tech

이번에는 UserControl8을 추가 해 주관식 응답을 관리 해 보자 필자는 이런식으로 label과 textBox를 넣었다. 주관식 영역에서는 '엔터'키를 한 명의 응답으로 인식한다. 예시는 아래 사진과 같다. 애초에 해당 포스팅 자체가 필자가 실제로 만들었어서 사용중인 프로그램을 다시 하나하나 설명하는 것이기 때문에 이미 구상해 뒀던 UI를 그대로 구현중인데 다르게 하고 싶다면 예시와 달라도 상관없다 이제 엔터키를 누르면 줄바꿈과 동시에 '-'를 넣어주는 코드를 넣어보자 먼저 첫 문장에는 무조건 -가 들어가야하기 때문에 UserControl8_Load에 다음 코드를 넣어주자 textBox1.AppendText("- "); Append는 추가하라는 뜻이다. 윈폼 뿐만이 아니라 파이썬에서도 유사하게 응용..

이제 ▲, ▼, ◀, ▶ 버튼에 기능을 넣어주자. 이 부분은 기본 알고리즘은 동일하고 앞서 만들었던 다수의 사용자 정의 컨트롤에 기능을 넣어주는 것이기 때문에 코드의 길이만 길 뿐 어렵지도 않고 설명할 부분도 없다. 먼저 ▲에 기능을 넣어주자. 행의 개수를 줄이는 버튼이다 DialogResult dr = MessageBox.Show("행을 삭제할 경우 기존 입력 내용이 초기화 됩니다\n마지막 행을 삭제할까요?", "경고!", MessageBoxButtons.YesNo); if (dr == DialogResult.Yes) { if (line > 2) { if (ans == "1") { flowLayoutPanel1.Controls.Remove(btn21[line - 1]); line -= 1; DataTa..

이번에는 ProMode(프로모드)를 만들 것이다. 프로모드의 경우 다음과 같은 기능들이 추가된다. 1) 서술형 응답관리 2) 객관식 응답을 엑셀로 저장 3) 객관식 응답의 자동 생성 및 행/열의 동적 수정 먼저 ProModeSetting.cs를 만들어 준다 해당 폼에서는 ProMode에 진입하기 전 질문과 선택지의 개수를 전달하는 기능을 구현한다 이 전달기능은 지금 배워두면 다른 곳에도 써먹을 수 있으니 잘 알아두자 필자의 경우 ProModeSetting을 위와 같이 디자인 했다. 질문의 개수대로 우리가 만든 사용자 정의 컨트롤을 생성하는 것이고 선택지의 개수에 따라 어떤 사용자 정의 컨트롤을 쓸 지 정해지는 것이다. 시작 버튼을 더블클릭하여 아래와 같은 코드를 넣어주자 ProMode newform = ..

이제 버튼을 누르면 해당 버튼의 숫자가 증가/감소하고 숫자의 합계가 나오는 기능을 구현해보자 먼저 UserControl1.cs에 다음과 같은 내용을 넣어주자 private void btn_MouseUp(object sender, MouseEventArgs e) { MouseEventArgs me = (MouseEventArgs)e; //마우스 이벤트 Button btn = sender as Button; if (me.Button == MouseButtons.Left) //클릭한 버튼이 마우스 왼쪽 버튼이면 실행할 코드들 { int val = Convert.ToInt32(btn.Text) + 1; //각 버튼들의 숫자값을 1씩 증가시킨다 btn.Text = val.ToString(); int hap = C..

오늘은 설문조사 결과산출 프로그램의 아주 기본적인 기능을 만들거다. 필자가 만들었던 프로토타입의 형태이며 사실 이것만 완성해도 꽤 쓸만하다 프로그램의 전체적인 그림을 설명하면 이런식으로 응답한 하나의 설문지에 대해 이런식으로 문항별 응답 횟수를 기록하는 프로그램이다. 실제로 만들었던 프로토타입이고 사진과 최대한 비슷하게 다시 만들어볼 것이다. 먼저 사용할 드라이브에 폴더를 하나 만들어준다 필자의 경우 D드라이브에 'NewSurveyTool'이라는 폴더를 만들었다. 이제 visualstudio를 실행하고 파일=>새로만들기=>프로젝트 를 눌러주자 이름은 내가 하고싶은대로 아무거나 상관없다 위치는 아까 만들었던 폴더의 위치로 지정 해 주면 된다 이제 화면을 구성해야 한다. 대부분의 설문조사지는 [매우 그렇지 ..