일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 게임신작
- 코딩
- 메이플스토리
- 인공지능
- ToyProject
- 게임
- 메이플
- 컴투스 신작
- 넷마블
- NC
- 신의탑 게임
- 파이썬 오류
- 파이썬
- TL
- 컴투스
- 여름게임
- 모바일게임
- 윈폼
- 마비노기 쇼케이스
- 메이플 쇼케이스
- 게임 트렌드
- 스팀
- 프로그래밍
- 스팀 할인
- 스팀세일
- 넥슨
- 신의탑
- 설문조사 결과산출
- 추억의 게임
- c#
- Today
- Total
목록c# (7)
JY Tech

이번시간에 UI를 수정하고 (중요)윈폼으로 만든 프로그램을 exe 형태의 배포파일로 만드는 과정을 배우면서 해당 포스팅은 끝이다. 사실 UI라고 할것도 없는게 이미 프로그래밍을 하면서 UI도 구성을 완료해서 첫화면만 구성하면 된다. 필자의 경우 위와 같이 구성했다. (사용법의 경우 본 포스팅에서 다루지 않았는데 폼을 하나 띄우고 사용법에 대해 간단하게 적어놓으면 된다. 해당 부분은 딱히 프로그래밍을 하며 배울 점이 없기 때문에 따로 추가하지 않았다) 우측 하단에 ⓒ 2022. 본인이름 All rights reserved. 와 같이 저작권 표시를 해주는 것도 좋다. 또한 pictureBox로 gif를 넣어줬다 pictureBox는 사진과 gif등을 넣을 때 사용하는 도구이다. 파란색으로 칠해진 곳의 우측에..

이번 시간에는 dataGridView에 입력한 내용들을 엑셀로 저장하는 기능을 구현할 것이다. 윈폼에서 엑셀을 연동하기 위해서는 패키지를 설치해야 한다. 화면 우측의 [참조]를 우클릭하고 [NuGet 패키지 관리] 를 클릭한다 찾아보기 에서 excel을 검색하고 이걸 설치하면 된다. ProMode의 엑셀로저장 버튼을 클릭 해 이벤트를 만들어주고 다음과 같이 코드가 구성되도록 한다 private void button2_Click(object sender, EventArgs e) { ExportToExcel(); //클릭 이벤트에 있어야 하는 코드 } 이제 ExportToExcel()을 만들어준면 된다. private void ExportToExcel() { bool IsExport = false; // C..

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

윈폼으로 사용자 정의 컨트롤을 만들고 추가하고 폼에서 사용하려면 내가 만든 컨트롤을 헤당 폼에 드래그 앤 드롭을 해야하는 경우가 있다. 그리고 아마 이런식의 오류가 뜰 수도 있는데 디버그 하지 않고 시작을 눌러 한번 프로그램을 실행시킨 후 다시 드래그 앤 드롭 하면 정상작동된다. MiniProject 포스팅을 하면서 나도 헤맸었던 부분인데 까먹지 않기 위해 메모용으로 남겨놓는다.

이제 ▲, ▼, ◀, ▶ 버튼에 기능을 넣어주자. 이 부분은 기본 알고리즘은 동일하고 앞서 만들었던 다수의 사용자 정의 컨트롤에 기능을 넣어주는 것이기 때문에 코드의 길이만 길 뿐 어렵지도 않고 설명할 부분도 없다. 먼저 ▲에 기능을 넣어주자. 행의 개수를 줄이는 버튼이다 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 = ..
필자는 사회복무요원으로 복무중인데 가끔 설문조사 결과를 산출해야 하는 업무가 주어진다 구글폼과 같은 온라인으로 설문조사를 받으면 굳이 결과를 산출할 필요가 없지만 근무하는 곳의 이용자층이 어린이부터 어르신들까지 다양하다보니 종이로 받을 때가 많다. 문제는 설문지가 한두장이 아니다보니 수기로 결과산출하기에는 귀찮은 점도 많고 헷갈린다는점... 그래서 윈폼을 사용하여 설문조사 결과를 산출하는 프로그램을 만들었다. 실제 쓰면서 만족도도 높았고 소집해제 후에도 기관에서 유용하게 쓰이지 않을까 싶다. 이미 작년초에 프로토타입을 완성하고 봄에 제작을 끝내 사용하고 있어서 새로 만들지, 기존에 만들었던걸 보여주면서 올릴지 생각중이지만 따라서 만들어보고 싶다면 Visual Studio를 미리 깔아두자