본문 바로가기

C# Form

WInForm 계산기(설명) 더보기
C# 숫자형식 포맷팅 형식지정자 종 류 예제 코드 출력 결과 C / c 통화 Currency Console.WriteLine("{0:C}", 2.5); Console.WriteLine("{0:C}", -2.5); $2.50 ($2.50) D / d 10진법 Decimal Console.WriteLine("{0:D5}", 25); 00025 E / e 과학적 지수 Scientific Console.WriteLine("{0:E}", 250000); 2.500000E+005 F / x 고정 소수점 Fixed-point Console.WriteLine("{0:F2}", 25); Console.WriteLine("{0:F0}", 25); 25.00 25 G / g 일반 General Console.WriteLine("{0:G}", 2.. 더보기
[C# Form] 아날로그 디지털시계 아날로그와 디지털 시계를 Form으로 만들어 보겠습니다.Form을 사용할 때는 GDI+를 사용합니다.디자인은 위와 같습니다. 메뉴 하나와 타이머 컨트롤을 사용하겠습니다. 또한 그림을 그리기 위한 Panel을 사용했습니다..소스코드는 다음과 같습니다.1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221.. 더보기
[C# Form] PictureBox와 OpenFileDialog PictureBox와 OpenFileDialog 를 이용해서 다음과 같은 이미지 뷰어를 만들어 보겠습니다. 도구상자에서 MenuStrip과 PictureBox를 추가하고 PictureBox는 부모와 도킹을 선택하여 배치합니다. OpenFileDialog를 추가합니다.이미지선택 메뉴를 누르면 OpenFileDialog가 팝업되고 파일을 선택하면 openFileDialog1.FileName으로 받게 됩니다.PictureBox에는 SizeMode 속성이 있는데, Normal, StretchImage, AutoSize, Zoom, CenterImage의 5가지를 선택할 수 있습니다. 이 5가지를 SizeMode선택 메뉴의 하위메뉴로 넣습니다.프로그램 소스는 다음과 같습니다.123456789101112131415.. 더보기
[C# Form] GDI+와 비트맵 이미지 Form 프로그램에서는 그래픽을 GDI+(Graphics Device Interface)를 사용한다. 그래서 원을 하나 그린다면, Graphics g = panel1.CreateGraphics(); // panel1에서 그래픽을 사용할 때 g.DrawEllipse(pen, rect); // rect는 원이 내접하는 Rectangle 객체 g.FillEllipse(Brushes.Black, rect); 와 같이 사용한다. 이와 함께 이미지 파일을 비트맵으로 그려주는 DrawImage() 함수를 많이 사용한다. Bitmap bmp = new Bitmap("../../Images/xxx.png"); g.DrawImage(bmp, rect);또는 다음과 같이 한 줄로 사용할 수 있다.g.DrawImage(new.. 더보기
[C# Form] Control의 배열 - 코딩으로 콘트롤 입력하기 버튼과 같은 같은 콘트롤이 반복되면, 이를 코딩에서 반복문으로 처리할 수 있다. 이렇게 하는 것이 훨씬 시간을 줄일 수 있으므로 알아두면 좋겠다. 화면에 버튼을 3행 4열로 12개 배치하고 싶다면, 디자이너에서 복사해서 넣을 수도 있지만| 그렇게 하는 경우 컨트롤의 이름이나 이벤트 함수등을 일일히 지정해 주어야 하는 번거러움이 있다. 따라서 이런 경우에는 코딩에서 처리해 주면 좋다. 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 31 32 33 34 35 namespace p280_controlArray { public partial class Form1 : Form { Button[] btn = new B.. 더보기
[C# Form] 마우스 좌표를 StatusStrip에 표시 마우스가 움직일 때 마우스의 좌표를 상태표시줄(Form의 왼쪽 아래에 있는 영역)에 나타내는 방법입니다. 그림처럼 Form 영역에서 마우스가 움직이면 상태표시줄에 좌표가 표시됩니다. Designer에서 StatusStrip을 추가하고 오른쪽 화살표를 눌러서 글을 쓰기위한 StatusLabel을 선택합니다. 디폴트로 이름이 toolStripStatusLabel1으로 주어지는군요. 이제 Form1의 MouseMove() 이벤트를 사용해서 좌표값을 읽을 수 있습니다. 소스는 다음과 같습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 using System.Windows.Forms; namespace WinFormEx4_Menu_ { public partial cla.. 더보기
[C# Form] 간단한 디지털 시계 그림과 같이 간단한 디지털 시계를 WinForm으로 만들어 보자 lable1에 현재의 시간을 기록하게 하면 된다. 시간을 처리하기 위해 Timer 콘트롤을 사용한다. 주의할 점은 WPF에서는 Timer를 쓸 수 없고 DispatcherTimer를 쓴다는 점이다. 또, DispatcherTimer를 사용하기 위해서 using System.Windows.Threading; 를 추가해야 한다. 폰트는 디자이너에서 수정했다. Form의 가운데에 글씨가 나타나게 하려면 Form의 ClientSize를 참조해야 한다. 또한 Label의 Size는 글자가 들어가야 나오므로 현재 시간을 넣어 주고 크기를 계산하도록 한다. 코드는 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 .. 더보기
도서관 관리 프로그램 이 프로그램은 한빛아카데미, IT CookBook C# 프로그래밍, 윤인성저의 13장 예제를 구현하였음 몇가지 책과 다른 점이 있음DataGridView의 이벤트를 책에서는 CurrentCellChanged() 이벤트를 사용하였으나 여기서는 CellClick()을 사용함. CurrentCellChanged() 이벤트를 사용할 경우 에러 나옴Form3.cs 구현에서 람다를 사용하여 button1_Click += (sender, e) => 로 사용했으나 여기서는 btnInsert_Click() 식으로 코딩함기타 각 창을 끝내는 단추를 삽입하고, 대여자 숫자의 변경을 반영하는 등 약간 수정하였음 (주의) - XML 파일(Books.xml, Users.xml)이 ./bin/Debug/에 있어야 함 - 또한 이 .. 더보기
Show()와 ShowDialog() show()는 창을 띄우서 보이는것(Modaless)showdialog()는 대화창이므로 이 창이 끝날때까지 다른 창을 쓸 수 없는 것(Modal) 새로운 창을 만들 때 사용하는 명령,new Form2().ShowDialog();또는Form form = new Form2();form.ShowDialog(); beeeye Dmu 더보기