[C#](21)
-
[C#] 텍스트 에디터(윈도우 메모장) 만들기 5
오늘은 1. 찾기 폼 제작 2. 모두 선택 기능을 구현했다. 1. FindDialog 만들기 우선 찾기 기능을 구현하기 위해서 Custom으로 Dialog를 만드려고 했다. 방법을 찾아보니 윈도우에서 지원하지 않고 따로 만들어줘야하는 것 같다. 위는 내가 만든 것, 아래는 윈도우 메모장이다. 찾으면서 하다보니 시간이 좀 걸렸는데, 내일부터는 빠르게 진행할 수 있을 것 같다. 내일 기능 구현하면서 더 수정할 예정이다. public class FindDialog : Form { private Label findLabel; private RichTextBox textBoxToSearch; private Button findNextButton; private Button cancleButton; private ..
2024.02.05 -
[C#] 텍스트 에디터(윈도우 메모장) 만들기 4
오늘은 1. 파일명 표시 & 텍스트가 바뀌면 파일명 앞에 * 표시 2. 끝내기 3. 실행 취소 & 잘라내기 & 복사 & 붙여넣기 & 삭제 기능을 구현할 것이다. + 실행 복구 1. 파일명 표시 & 텍스트 변경 시 파일명 앞 * 표시 //파일 이름 변경 private void UpdateFormTitle() { string fileName = string.IsNullOrEmpty(currentFilePath) ? "제목 없음" : Path.GetFileName(currentFilePath); this.Text = isTextChanged ? $"*{fileName}" : fileName; } 우선 파일명을 업데이트하는 메소드를 만들었다. 저장을 안한 상태(처음 만든 상태)면 제목을 "제목 없음"으로 표시하..
2024.02.04 -
[C#] 텍스트 에디터(윈도우 메모장) 만들기 3
오늘은 "파일" 메뉴의 1. 새 창 2. 열기 3. 다른 이름으로 저장 4. 인쇄 기능을 구현해볼 것이다. 1. 새 창 private void NewMemoToolTip_Click(object sender, EventArgs e) { // 새 창을 만들기 위해 메모장의 복사본을 생성 메모장 newMemo = new 메모장(); newMemo.Show(); } 새로운 객체를 생성해서 보여준다. 2. 열기 private void OpenToolTip_Click(object sender, EventArgs e) { //현재 메모장에 수정이 있으면 저장 여부 후 열기 작업 진행 if (isTextChanged) { DialogResult result = MessageBox.Show("변경된 내용을 저장하시겠습니..
2024.02.04 -
[C#] 텍스트 에디터(윈도우 메모장) 만들기 2
오늘은 1. 시간 입력 2. 파일 저장 3. 새 파일 기능을 구현해볼 것이다. 1. 시간 입력 기능 메모장에 보면 편집 -> 시간/날짜 라는 기능이 있다. 해당 메뉴를 클릭하거나 F5를 누르면 시간이 나타난다. //시간 입력(F5) private void TimeTextToolTip_Click(object sender, EventArgs e) { //현재 시간 추가 MyTextArea.Text += DateTime.Now.ToString(); //커서 맨 뒤로 이동 MyTextArea.SelectionStart = MyTextArea.Text.Length; MyTextArea.SelectionLength = 0; MyTextArea.Focus(); } 현재 Text뒤에 DateTime.Now를 사용해서 ..
2024.02.02 -
[C#] 텍스트 에디터(윈도우 메모장) 만들기 1
오늘은 디자인부터 해볼 생각이다. 1. Menu 만들기 디자인에서 도구 상자의 MenuStrip을 추가해준다. 각 메뉴 이름을 입력해준다. 2. 구분선 추가 구분선은 인터넷에 검색해도 안나오길래 없는 줄 알았더니 추가하고 싶은 줄에다 대고 오른쪽 마우스 클릭 - 삽입 - Separator 해주니 구분선이 생겼다. 3. 단축키 설정 속성에 Misc의 ShortcutKeys에서 단축키를 설정해준다 ex) Ctrl 체크하고 키에 S를 설정해주면 Ctrl+S가 생긴다. 4. 텍스트 박스추가 RichTextBox를 추가해줬다. 화면을 늘려도 크기가 고정이라 같이 늘어나게 해주기 위해 Anchor 속성에 Top, Bottom, Left, Right로 설정했다.
2024.02.01 -
[C#] 계산기 전체 코드
using System; using System.Data; using System.Diagnostics; using System.Runtime.Serialization; using System.Xml.Linq; namespace HelloCsharpwin { public enum Operators {None, Add, Sub, Multi, Div} public partial class Calculator : Form { public double Result = 0; public bool isNewNum = true; public Operators Opt = Operators.None; public Calculator() { InitializeComponent(); } //숫자 버튼 클릭 이벤트 priva..
2024.01.11