Microsoft PowerPoint - 07-C#-12-GDI+.ppt [호환 모드]

Size: px
Start display at page:

Download "Microsoft PowerPoint - 07-C#-12-GDI+.ppt [호환 모드]"

Transcription

1 그래픽디바이스인터페이스 GraphicsTest 프로그램예 MyCanvas 프로그램예 순천향대학교컴퓨터학부이상정 1 그래픽디바이스인터페이스 순천향대학교컴퓨터학부이상정 2

2 GDI+ 개요 GDI+ 란? GDI(Graphic Device Interface) 란프로그래머가그래픽장치의종류에상관없이그래픽기능을가지는프로그램을작성하도록도와주는 API들의모음.NET 환경에서이전의 GDI 기능을확장한것이 GDI+ 순천향대학교컴퓨터학부이상정 3 GDI+ 그래픽기능 GDI+ 는 2D 벡터그래픽, 이미징, 문자출력기능지원 2D 벡터그래픽 (vector graphic) 점과선을기반으로한그래픽 두개의점으로선표현, 두꼭지점으로사각형표현등 이미징 픽셀 (pixel) 단위의그림파일을편집하는기능 비트맵 (bitmap) 등으로표현된사진이나그림편집 문자출력 시스템폰트를사용하여그래픽장치에문자를출력하는기능 System.Drawing 네임스페이스 GDI+ 의그래픽기능을제공하는클래스정의 순천향대학교컴퓨터학부이상정 4

3 System.Drawing 주요클래스 (1) Class Bitmap Brush 설명 GDI+ 의비트맵기능을처리하는클래스 선, 점, 사각형등등, 어떤도형을특정색깔로채우기할때사용. Brush 클래스는추상클래스이기때문에직접사용할수는없고, 이클래스에서상속받은클래스를사용. Brushes 표준색상들이정의되어있는클래스 ColorTranslator Font FontFamily Graphics 색깔의표현형식을변환해주는클래스 GDI+ 가출력할문자의글꼴을지정하는클래스비슷한글꼴을그룹으로묶어관리하는클래스 GDI+ 에서의핵심역할을담당하는클래스. 그래픽, 문자등을출력하는클래스 순천향대학교컴퓨터학부이상정 5 System.Drawing 주요클래스 (2) Class Icon Image Pen Pens StringFormat TextureBrush 설명아이콘을담당하는클래스비트맵, 아이콘, 메타파일클래스들의조상이되는추상클래스선의스타일등을지정하는클래스 Pen에서사용할수있는색상들을정의하고있는클래스문자출력스타일에대한정보를처리하는클래스 Brush 클래스가단지색깔을이용해도형을그리는것에비해, 이미지를색깔대신에사용하는클래스 순천향대학교컴퓨터학부이상정 6

4 Graphics 클래스 Graphics 클래스사용방법 1) 도화지준비 ( 그림을그릴 Image, Bitmap등을생성 ) // 너비 300, 높이 400 의비트맵생성 Bitmap newbitmap = new Bitmap(300, 400); 2) 붓준비 (Pen이나 Brush 객체생성 ) // 노란색, 굵기 3 의펜객체생성 Pen mypen = new Pen(Color.Yellow, 3); // 빨간색솔리드브러시객체생성 Brush mybrush = new SoilidBrush(Color.Red) l d) 3) Graphics 객체생성및그리기 Graphics g = Graphics.FromImage(newBitmap); g.drawline(mypen, Point1, Point2); => Graphics 객체는 new 연산자를사용하지않고다른메쏘드 ( 이를 Factory Method라고함 ) 를이용해자신의객체를할당 순천향대학교컴퓨터학부이상정 7 GraphicsTest 프로그램예 순천향대학교컴퓨터학부이상정 8

5 2D 벡터그래픽클래스 Method 설명 DrawArc 호를그립니다. DrawBezier 베지어곡선을그립니다. DrawCurve 곡선을그립니다. DrawEllipse 타원을그립니다. DrawLine 선분을그립니다. DrawPath 특정경로를선분으로잇습니다. DrawPie 원을그립니다. DrawPolygon 다각형을그립니다. DrawRectangle 사각형을그립니다. 순천향대학교컴퓨터학부이상정 9 2D 벡터그래픽실행예 순천향대학교컴퓨터학부이상정 10

6 2D 벡터그래픽예 프로젝트 템플릿 : Windows 응용프로그램 이름 : 12-GraphicsTest Form 컨트롤배치 Group Box Picture Box Radio Button 순천향대학교컴퓨터학부이상정 11 컨트롤속성 Form 컨트롤 [Name]->MainForm, [Text]->GraphicsTest 예제 Picture Box 컨트롤 [Name]->Canvas [BackColor]-[ 사용자지정 ]->White Group Box 컨트롤 [Name]->VectorGroup, [Text]->2D 벡터그래픽 3 개 Radio Button 컨트롤 [Name]->optLine, [Text]->DrawLine [Name]->optEllipse, [Text]->DrawEllipse [Name]->optRect, [Text]->DrawRectangle 순천향대학교컴퓨터학부이상정 12

7 코드추가및 MouseDown 이벤트처리 MainForm 클래스 (Form1.cs 코드보기 ) 에좌표정보변수선언 // 첫번째좌표, 구조체 Point, Pt1.x Pt1.y private Point Pt1; // 두번째좌표 private Point Pt2; Picture Box 컨트롤 MouseDown 이벤트 마우스버튼눌렀을때좌표를 Pt1 에저장 private void Canvas_MouseDown ( object sender, MouseEventArgs e ) Pt1.X = e.x; Pt1.Y = e.y; 순천향대학교컴퓨터학부이상정 13 MouseUp 이벤트처리 Picture Box 컨트롤 MouseUp 이벤트 마우스버튼 up 한지점에서도형을그림 private void Canvas_MouseUp(object sender, MouseEventArgs e) Pt2.X = e.x; Pt2.Y = e.y; // MainForm을도화지삼아그래픽스객체생성 Graphics g = Canvas.CreateGraphics(); CreateGraphics(); // 사용할펜을생성합니다. Pen mypen = new Pen(Color.Blue, 10); // 선분그리기모드라면 if (optline.checked == true) g.drawline(mypen, Pt1, Pt2); // 타원그리기모드라면.. else if (optellipse.checked == true) g.drawellipse(mypen, Pt1.X, Pt1.Y, Pt2.X - Pt1.X, Pt2.Y - Pt1.Y); else // 이도저도아닌사각형그리기라면.. g.drawrectangle(mypen, Pt1.X, Pt1.Y, Pt2.X - Pt1.X, Pt2.Y - Pt1.Y); 순천향대학교컴퓨터학부 이상정 14

8 이미징클래스 Method 설명 DrawIcon 정해진영역안에아이콘을그립니다. DrawIconUnstretched DrawIcon과같은일을하지만아이콘본래의크기대로아이콘을그립니다. DrawImage 본래의크기로이미지를그립니다. DrawImageUnscaled 좌표쌍에의해정의된좌표에이미지를그립니다. 순천향대학교컴퓨터학부이상정 15 Bitmap 클래스사용예 실행예 GroupBox Button TextBox 순천향대학교컴퓨터학부이상정 16

9 컨트롤속성 Group Box 컨트롤 [Text]-> 이미징 Button 컨트롤 [Name]->ImageBtn, [Text]-> 이미지불러오기 Text Box 컨트롤 [Name]->txtImage, [Text]->"" [MultiLine]->True 순천향대학교컴퓨터학부이상정 17 버튼 Click 이벤트처리 12-GraphicsTest bin Release 디렉토리에 CatCity.bmp 파일을미리복사 Button 컨트롤의 Click 이벤트처리 private void ImageBtn_Click ( object sender, EventArgs e ) // CatCity.bmp 파일로부터 mybmp 객체를생성합니다. Bitmap mybmp = new Bitmap(Application.StartupPath + " CatCity.bmp"); Graphics g = Canvas.CreateGraphics(); g.drawimage(mybmp, 0, 0); //mybmp 에담겨있는이미지를 Canvas 에그립니다. // r은라인의끝, n은라인의시작을가리키는이스케입문자입니다. tti txtimage.appendtext(" t(" 높이 :"+ mybmp.height + " "); txtimage.appendtext(" 너비 : " + mybmp.width + " r n"); txtimage.appendtext(" 수평해상도 : " + mybmp.horizontalresolution + " "); txtimage.appendtext(" 수직해상도 : " + mybmp.verticalresolution + " r n"); 순천향대학교컴퓨터학부이상정 18

10 문자출력예 문자출력클래스 Method DrawString() 화면에문자를출력한다. 설명 GroupBox TextBox Button 순천향대학교컴퓨터학부이상정 19 컨트롤속성 Group Box 컨트롤 [Text]-> 문자출력 Text Box 컨트롤 [Name]->txtDraw, [Text]->"" [MultiLine]->True Button 컨트롤 [Name]->TypoBtn, [Text]->Canvas 에출력 순천향대학교컴퓨터학부이상정 20

11 버튼 Click 이벤트처리 Button 컨트롤의 Click 이벤트처리 private void TypoBtn_Click ( object sender, EventArgs e ) // MainForm을도화지삼아그래픽스객체생성 Graphics g = Canvas.CreateGraphics ( ); //Graphics 가사용할브러쉬생성 Brush mybrush = new SolidBrush ( Color.Red ); // 폰트생성 Font myfont = new Font ( " 굴림 ", 12 ); //Canvas의너비와높이를재서 r에크기를저장합니다. RectangleF r = new RectangleF ( 0, 0, Canvas.Width, Canvas.Height ); //txtdraw의내용을출력합니다. txtdraw의내용이 Canvas의너비를 // 벗어날만큼길다면자동으로줄이바뀌어출력됩니다. g.drawstring g ( txtdraw.text, myfont, mybrush, r ); 순천향대학교컴퓨터학부이상정 21 MyCanvas 프로그램예 순천향대학교컴퓨터학부이상정 22

12 MyCanvas 프로그램소개 GDI+ 기능을테스트 이미지파일을읽어서이미지처리 2D 그래픽표시, 문자출력등의기본기능 수정된내용을파일에저장 순천향대학교컴퓨터학부이상정 23 실행예- 색변환 순천향대학교컴퓨터학부이상정 24

13 실행예- 문자출력 순천향대학교컴퓨터학부이상정 25 프로젝트생성및폼추가 프로젝트새로만들기 [ 파일 ]-[ 새프로젝트 ] [ 템플릿 ]-> Windows 응용프로그램, [ 이름 ]->12-MyCanvas 파일이름변경 Form1.cs -> MainForm.cs Program.cs -> MainApp.cs 폼 3 개추가 파일복사나이동시대상폴더를선택하는폴더다이얼로그추가 [ 솔루션탐색기 ]-> "12-MyCanvas" 선택, 마우스오른쪽버튼 [ 추가 ]-Windows Form, [ 템플릿 ]-> Windows Form, [ 이름 ]->TextDlg.cs [ 추가 ]-Windows Form, [ 템플릿 ]-> Windows Form, [ 이름 ]->ConvertClrDlg.cs [ 추가 ]-Windows Form, [ 템플릿 ]-> Windows Form, [ 이름 ]->AboutDlg.cs 순천향대학교컴퓨터학부이상정 26

14 MainForm.cs 폼컨트롤배치 MenuStrip PictureBox ToolStrip OpenFileDialog SaveFileDialog ColorDialog 순천향대학교컴퓨터학부이상정 27 컨트롤속성 Form 컨트롤 [Name]->MainForm, [Text]->MyCanvas Picture Box 컨트롤 [Name]->Canvas OpenFileDialog 컨트롤 [Name]->OpenDlg, [Filter]-> 비트맵파일 (*.bmp) *.bmp 모든파일 (*.*) *.* SaveFileDialog 컨트롤 [Name]->SaveDlg, [Filter]-> 비트맵파일 (*.bmp) *.bmp bmp 모든파일 (*.*) *.**) * * ColorDialog 컨트롤 [Name]->ColorDlg 순천향대학교컴퓨터학부이상정 28

15 메뉴항목구성 (1) MenuStrip 컨트롤 [Name]->MainMN File, Shape, Help 주메뉴 [Name]->menu_File, [Text]->&File [Name]->menu_Shape, [Text]->&Shape [Name]->menu_Help, [Text]->&Help File 하위메뉴 New, Open, Save, Separator, Exit 하위메뉴 [Name]->menu_File_New, [Text]->&New, [ShortcutKeys]->Ctrl+N [Name]->menu_File_Open, [Text]->&Open, [ShortcutKeys]->Ctrl+O [Name]->menu_File_Save, [Text]->&Save, [ShortcutKeys]->Ctrl+S S [Name]->toolStripSeparator1 [Name]->menu_Exit, [Text]->E&xit, [ShortcutKeys]->Ctrl+X 순천향대학교컴퓨터학부이상정 29 메뉴항목구성 (2) Shape 하위메뉴 Line, Rectangle, Circle, Free Draw, TextOut, Separator, Color, ConvertColor 하위메뉴 [Name]->menu_Shape_Line, [Text]->&Line [Name]->menu_Shape_Rect, [Text]->&Rectangle [Name]->menu_Shape_Circle, [Text]->&Circle [Name]->menu_Shape_Free, [Text]->Free &Draw [Name]->menu_Shape_Text, [Text]->&TextOut [Name]->toolStripSeparator2 [Name]->menu_Shape_Color, [Text]->Colo&r [Name]->menu_Shape_Convert, [Text]->Con&vertColor Help 하위메뉴 About 하위메뉴 [Name]->menu >menu_help_about, [Text]->&About 순천향대학교컴퓨터학부이상정 30

16 툴바항목구성 ToolStrip 속성 [Name]->MainTB 툴바아이템 13 개 (10 개버튼,3 개 separator) 추가 [ 속성창 ]-[Items]-[ ]-[ 아이템컬렉션편집기 ] 또는 이미지는 07-Csharp-Image 12-MyCanvas 디렉토리참조 [Name]->NewBtn, [Image]->New.ico, [ToolTipText]-> 새파일 [Name]->OpenBtn, [Image]->Open.ico, [ToolTipText]-> 파일열기 [Name]->SaveBtn, [Image]->Save.ico, [ToolTipText]-> 파일저장 [Name]->toolStripSperator3 [Name]->LineBtn, [Image]->Line.ico, [ToolTipText]-> 직선 [Name]->RectBtn, [Image]->Rectangle.ico, [ToolTipText]-> 사각형 [Name]->CirceltBtn, [Image]->Circle.ico, [ToolTipText]-> 원 [Name]->FreeBtn, [Image]->Free.ico, [ToolTipText]->Free Draw [Name]->TextBtn, [Image]->textOut.ico, [ToolTipText]-> 문자출력 [Name]->toolStripSperator4 [Name]->ConvertClrBtn, [Image]->ConvertClr.ico, [ToolTipText]-> 색을변환합니다. [Name]->toolStripSperator5 [Name]->ColorBtn, [DisplayStyle]->Text, [Text]->Color 순천향대학교컴퓨터학부이상정 31 TextDlg.cs 폼컨트롤배치 TextDlg 폼 [Shape] 메뉴-[Textout], 툴바 [T] 선택시표시 글꼴및크기선택, 텍스트출력 GroupBox Form Button TextBox Label Button FontDialog 순천향대학교컴퓨터학부이상정 32

17 컨트롤속성 Form 컨트롤 [Name]->TextDlg, [Text]->Text Out, [FormBorderStyle]->FixedDialog, [MaximizeBox]->False, [MinimizeBox]->False FontDialog 컨트롤 [Name]->FontDlg Group Box 컨트롤 [Name]->FontGroup, [Text]->Font Label 컨트롤 2개 [Name]->FontName, [Text]-> 글꼴 [Name]->FontSize, [Text]-> 크기 TextBox 컨트롤 3개 [Name]->txtFont, [Text]->"" [Name]->txtSize, [Text]->" [Name]->txtContents, [MultiLine]->True, [Text]->" Button 컨트롤 2개 [Name]->FontBtn, [Text]-> 글꼴변경 [Name]->OKBtn, [Text]-> 확인 순천향대학교컴퓨터학부이상정 33 ConvertClrDlg.cs 폼컨트롤배치 ConvertClrDlg 폼 특정픽셀의색을수정하는다이얼로그 Form GroupBox Label PictureBox ColorDialog Button 순천향대학교컴퓨터학부이상정 34

18 컨트롤속성 Form 컨트롤 [Name]->ConvertClrDlg, [Text]->Text Out, [FormBorderStyle]- >FixedDialog, [MaximizeBox]->False, [MinimizeBox]->False Group Box 컨트롤 [Name]->FontGroup, [Text]->Font Label 컨트롤 2개 [Name]->FontName, N [Text]-> 글꼴 [Name]->FontSize, [Text]-> 크기 TextBox 컨트롤 3개 [Name]->txtFont, [Text]->"" [Name]->txtSize, [Text]->"" [Name]->txtContents,,[MultiLine]->True,,[Text]->"" Button 컨트롤 2개 [Name]->FontBtn, [Text]-> 글꼴변경 [Name]->OKBtn >OKBtn, [Text]-> 확인 순천향대학교컴퓨터학부이상정 35 AboutDlg.cs 폼컨트롤 AboutDlg 폼 프로그램정보다이얼로그 Form Label Form 컨트롤 [Name]->AboutDlg, [Text]->myCanvas 정보, [FormBorderStyle]- >FixedDialog, [MaximizeBox]->False, [MinimizeBox]->False Label 컨트롤 2개 [Name]->ProgramInfo, [Text]->myCanvas 1.0, [Font]-> 굴림 / 크기 :14/ 굵게 [Name]->LicenseInfo, [AutoSize]->False, [Text]-> 순천향대학교정보기술공학부윈도우프로그래밍 Button 컨트롤 [Name]->OKBtn, [Text]-> 확인 Button 순천향대학교컴퓨터학부이상정 36

19 MainForm 클래스 : 좌표, 색상, 그리기모드코드 // 시작점 private Point Point1; // 종료점 private Point Point2; // 그릴때사용할색깔에대한정보를가집니다. private Color mycolor; // mycolor 변수에선택한색정보를저장합니다. public void SetColor() // 대화상자표시, 색선택, 선택된색저장 if (ColorDlg.ShowDialog() == DialogResult.OK) mycolor = ColorDlg.Color; // Color 툴바색변경 ColorBtn.BackColor = mycolor; // 어떤도형을그릴지에대한정보를가집니다. private int DrawMode; // 어떤도형을그릴지결정하기 public void SetShape(int i) DrawMode = i; enum Shape : int Line, Rect, Circle, FreeLine, Text, ConvertColor 순천향대학교컴퓨터학부이상정 37 MainForm 클래스 : // 직선을그립니다. 기본도형그리기코드 (1) private void DrawLine(Pen mypen, Graphics g) g.drawline(mypen, Point1, Point2); // 사각형을그립니다. private void DrawRectangle(Pen mypen, Graphics g) int x, y, width, height; if (Point1.X <= Point2.X) x = Point1.X; width = Point2.X - x; else x = Point2.X; width = Point1.X - x; if (Point1.Y <= Point2.Y) y = Point1.Y; else height ht = Point2.Y - y; y = Point2.Y; height = Point1.Y - y; g.drawrectangle(mypen, x, y, width, height); 순천향대학교 컴퓨터학부이상정 38 // 원을그립니다. private void DrawCircle(Pen mypen, Graphics g) int x, y, width, height; if (Point1.X <= Point2.X) x = Point1.X; width = Point2.X - x; else x = Point2.X; width = Point1.X - x; if (Point1.Y <= Point2.Y) y = Point1.Y; height = Point2.Y - y; else y = Point2.Y; height = Point1.Y - y; g.drawellipse(mypen, x, y, width, height);

20 MainForm 클래스 : 기본도형그리기코드 (2) // 자유곡선을그립니다. private void DrawFreeLine(Pen mypen, Graphics g) g.drawline(mypen, Point1, Point2); // 도형그리기 private void DrawShape() Pen mypen = new Pen(myColor, 3); Graphics g = Graphics.FromImage(Canvas.Image); I switch (DrawMode) case (int)shape.line: DrawLine(myPen, g); break; case (int)shape.rect: DrawRectangle(myPen, g); break; case (int)shape.circle: DrawCircle(myPen, g); break; case (int)shape.freeline: DrawFreeLine(myPen, g); break; 순천향대학교컴퓨터학부이상정 39 case (int)shape.text: t Brush mybrush = new SolidBrush(myColor); DrawText(myBrush, g); break; case (int)shape.convertcolor: ConvertColor(); break; Canvas.Refresh(); // 이미지의변경사항을반영합니다. // Canvas 에출력할텍스트의글꼴 private static Font myfont; // Canvas 에출력할텍스트 private static string contents; MainForm 클래스 : 문자출력코드 // 글꼴 public static Font myfont get return myfont; set myfont = value; // 출력할내용 public static string Contents get return contents; set contents = value; 순천향대학교 컴퓨터학부이상정 40 // 문자를출력합니다. private void DrawText(Brush mybrush, Graphics g) TextDlg mytextdlg = new TextDlg(); // TextDlg 대화상자를띄워서글꼴과 mytextdlg.showdialog(this); // 출력할내용에대한정보를입력받습니다. g.drawstring(contents, myfont, mybrush, Point2); // 내용을출력하고 Contents = ""; // 변수의내용을삭제합니다.

21 TextDlg 클래스 : 이벤트처리 (1) [ 글꼴변경 ][ ],[ 확인 ] 버튼 Click 이벤트처리 순천향대학교컴퓨터학부이상정 41 TextDlg 클래스 : 이벤트처리 (2) private void FontBtn_Click(object sender, EventArgs e) // 폰트대화상자표시, 선택후텍스트박스에저장표시 if (FontDlg.ShowDialog(this) == DialogResult.OK) txtfont.text = FontDlg.Font.Name; txtsize.text = Convert.ToString(FontDlg.Font.Size); private void OKBtn_Click(object t sender, EventArgs e) try Font newfont = new Font(txtFont.Text, Convert.ToSingle(txtSize.Text)); MainForm.myFont = newfont; MainForm.Contents = txtcontents.text; this.close(); // Textdlg를닫습니다. catch (Exception fonte) MessageBox.Show(this, "Font의종류를선택해주세요."); 순천향대학교컴퓨터학부이상정 42

22 MainForm 클래스 : 색상변환코드 private static Color sourcecolor; private static Color targetcolor; // 원본색상 public static Color SourceColor get return sourcecolor; set sourcecolor = value; // 대상색상 public static Color TargetColor get return targetcolor; set targetcolor = value; 순천향대학교컴퓨터학부이상정 43 private void ConvertColor() // Canvas.Image를이용해 Bitmzp 객체를생성합니다. Bitmap tempbmp = new Bitmap(Canvas.Image); // 마우스로찍었던픽셀의색을얻어와 SourceColor에저장합니다. Color tempcolor = tempbmp.getpixel(point2.x, tpi i t2 Point2.Y); SourceColor = tempcolor; //ConvertClrDlg를띄워 TargetColor에바꿀색을입력받습니다. ConvertClrDlg myconvertclrdlg = new ConvertClrDlg(); myconvertclrdlg.showdialog(this); //tempbmp의각픽셀을돌면서 SetPixel() 을이용해색을바꿉니다. for (int i = 0; i < tempbmp.height; i++) for (int j = 0; j < tempbmp.width; j++) if (tempbmp.getpixel(j, i) == SourceColor) tempbmp.setpixel(j, tpi i, TargetColor); // 변경된 tempbmp 를 Canvas.Image 에저장합니다. Canvas.Image = tempbmp; ConvertClrDlg 클래스 : 이벤트처리 (1) [ConvertClrDlg] 폼 Load 이벤트처리 [ 바꿀색상 ] PictureBox Click 이벤트처리 [ 확인 ] 버튼 Click 이벤트처리 순천향대학교컴퓨터학부이상정 44

23 ConvertClrDlg 클래스 : 이벤트처리 (2) private void ConvertClrDlg_Load(object sender, EventArgs e) SrcClrBox.BackColor = MainForm.SourceColor; private void TrgClrBox_Click(object sender, EventArgs e) if (ColorDlg.ShowDialog(this) == DialogResult.OK) TrgClrBox.BackColor = ColorDlg.Color; //TrgClrBox 의배경색도바꾸고 MainForm.TargetColor = ColorDlg.Color; //MainForm 의 TargetColor 도바꿉니다. private void OKBtn_Click(object sender, EventArgs e) this.close(); 순천향대학교컴퓨터학부이상정 45 MainForm 클래스 : 파일관련코드 (1) // 새파일만들기 public void NewDocument() //Canvas.Image에이미지가있다면저장 if (Canvas.Image!= null) SaveDocument(); //Canvas 의너비와높이가같은 Bitmap 객체를생성 Bitmap newbitmap = new Bitmap(Canvas.Width, Canvas.Height); Canvas.Image = newbitmap; //Canvas를하얀색으로칠합니다. Brush mybrush = new SolidBrush(Color.White); Graphics g = Graphics.FromImage(Canvas.Image); g.fillrectangle(mybrush, 0, 0, Canvas.Image.Width, Canvas.Image.Height); // 사용할색을검정색으로설정합니다. mycolor = Color.Black; ColorBtn.BackColor = mycolor; 순천향대학교 컴퓨터학부이상정 46 // 파일열기 public void OpenDocument() try if (Canvas.Image!= null) SaveDocument(); if (OpenDlg.ShowDialog() == DialogResult.OK) Canvas.Image = Image.FromFile(OpenDlg.FileName); catch (Exception opene) // 파일을열때예외상황이발생하면예외내용을 // 사용자에게알립니다. MessageBox.Show(this, " 파일을여는데오류가발생하였습니다. : " + opene.message, "mycanvas", MessageBoxButtons.OK, MessageBoxIcon.Error);

24 MainForm 클래스 : 파일관련코드 (2) // 파일저장 public void SaveDocument() // 먼저그림판이비어있나검사하고 if (Canvas.Image!= null) // 비어있지않다면작업중인문서를저장합니다. if (MessageBox.Show(this, " 저장하시겠습니까?",?, "mycanvas", MessageBoxButtons.YesNo) == DialogResult.Yes) //SaveDlg를띄워파일이름을선택하게한후 if (SaveDlg.ShowDialog() ShowDialog() == DialogResult.OK) // 문서를저장합니다. Canvas.Image.Save(SaveDlg.FileName); 순천향대학교컴퓨터학부이상정 47 MainForm 클래스 : 메뉴이벤트처리 (1) [MainForm] 폼 Load 이벤트처리 메뉴 Click 이벤트처리 public MainForm() InitializeComponent(); private void MainForm_Load(object sender, EventArgs e) NewDocument(); private void menu_file_new_click(object sender, EventArgs e) NewDocument(); private void menu_file_open_click(object sender, EventArgs e) OpenDocument(); private void menu_file_save_click(object sender, EventArgs e) SaveDocument(); 순천향대학교컴퓨터학부이상정 48 private void menu_exit_click(object sender, EventArgs e) if (MessageBox.Show(this, " 종료하시겠습니까?", "mycanvas", MessageBoxButtons.OKCancel) == DialogResult.OK) Application.Exit();

25 private void menu_shape_line_click(object sender, EventArgs e) SetShape((int)Shape.Line); private void menu_shape_rect_click(object sender, EventArgs e) SetShape((int)Shape.Rect); private void menu_shape_circle_click(object sender, EventArgs e) SetShape((int)Shape.Circle); private void menu_shape_free_click(object sender, EventArgs e) SetShape((int)Shape.FreeLine); private void menu_shape_text_click(object sender, EventArgs e) SetShape((int)Shape.Text); private void menu_shape_color_click(object sender, EventArgs e) SetColor(); 순천향대학교컴퓨터학부이상정 49 MainForm 클래스 : 메뉴이벤트처리 (2) private void menu_shape_convert_click(object sender, EventArgs e) SetShape((int)Shape.ConvertColor); private void menu_help_about_click(object sender, EventArgs e) AboutDlg myaboutdlg = new AboutDlg(); myaboutdlg.showdialog(this); MainForm 클래스 : 툴바이벤트처리 툴바 Click 이벤트처리 private void NewBtn_Click(object sender, EventArgs e) NewDocument(); private void OpenBtn_Click(object sender, EventArgs e) OpenDocument(); private void SaveBtn_Click(object sender, EventArgs e) SaveDocument(); private void LineBtn_Click(object sender, EventArgs e) SetShape((int)Shape.Line); private void RectBtn_Click(object sender, EventArgs e) SetShape((int)Shape.Rect); p ) 순천향대학교컴퓨터학부이상정 50 private void CircleBtn_Click(object sender, EventArgs e) SetShape((int)Shape.Circle); private void FreeBtn_Click(object sender, EventArgs e) SetShape((int)Shape.FreeLine); private void TextBtn_Click(object sender, EventArgs e) SetShape((int)Shape.Text); private void ConvertClrBtn_Click(object Click(object sender, EventArgs e) SetShape((int)Shape.ConvertColor); private void ColorBtn_Click(object Click(object sender, EventArgs e) SetColor();

26 MainForm 클래스 : 마우스이벤트처리 [Canvas] PictureBox MouseDown/ MouseUp/MouseMove 이벤트처리 private void Canvas_MouseDown(object sender, MouseEventArgs e) Point1.X = e.x; Point1.Y = e.y; private void Canvas_MouseUp(object sender, MouseEventArgs e) Point2.X = e.x; Point2.Y = e.y; DrawShape(); private void Canvas_MouseMove(object sender, MouseEventArgs e) if (e.button == MouseButtons.Left) // 마우스왼쪽버튼을눌렀다면 // 그리기모드가자유곡선그리기일때만 if (DrawMode == (int)shape.freeline) ) Point2.X = Point1.X; 순천향대학교컴퓨터학부이상정 51 Point2.Y = Point1.Y; Point1.X = e.x; Point1.Y = e.y; DrawShape(); AboutDlg 클래스 : 이벤트처리 [ 확인 ] 버튼 Click 이벤트처리 private void OKBtn_Click(object sender, EventArgs e) Close(); 순천향대학교컴퓨터학부이상정 52

27 실행예 순천향대학교컴퓨터학부이상정 53 실행예- 색변환 순천향대학교컴퓨터학부이상정 54

28 실행예- 문자출력 순천향대학교컴퓨터학부이상정 55 과제 이장에서소개된 GraphicsTest 또는 MyCanvas 를개선 한프로그램 디자인변경또는새로운기능추가 순천향대학교컴퓨터학부이상정 56

(Microsoft PowerPoint - C#\260\355\261\3363\(WinForm\).ppt)

(Microsoft PowerPoint - C#\260\355\261\3363\(WinForm\).ppt) - 1 - C# Programming 이현정 hjyi@hotmail.com MCT/MCSD/MCAD/MCSD.NET 목차 - 2-1부 C# 언어 1장 C, C++ 그리고 C# 2장 Hello, C#! 3장변수와자료형 4장연산자 5장흐름제어 6장메쏘드 7장클래스 8장배열과컬렉션 9장속성과인덱서 10장델리게이트와이벤트 11장예외처리 12장특성 13장일반화프로그래밍

More information

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx 2018 학년도 1 학기 JAVA 프로그래밍 II 514760-1 2018 년봄학기 5/10/2018 박경신 Lab#1 (ImageTest) Lab#1 은영상파일 (Image) 을읽어서정보를출력 Java Tutorials Lesson: Working with Images https://docs.oracle.com/javase/tutorial/2d/images/index.html

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 인터페이스, 람다식, 패키지 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 홈네트워킹 public interface RemoteControl { public void turnon(); // 가전제품을켠다. public void turnoff(); // 가전제품을끈다. 인터페이스를구현 public class Television

More information

Microsoft PowerPoint - CSharp-10-예외처리

Microsoft PowerPoint - CSharp-10-예외처리 10 장. 예외처리 예외처리개념 예외처리구문 사용자정의예외클래스와예외전파 순천향대학교컴퓨터학부이상정 1 예외처리개념 순천향대학교컴퓨터학부이상정 2 예외처리 오류 컴파일타임오류 (Compile-Time Error) 구문오류이기때문에컴파일러의구문오류메시지에의해쉽게교정 런타임오류 (Run-Time Error) 디버깅의절차를거치지않으면잡기어려운심각한오류 시스템에심각한문제를줄수도있다.

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

어댑터뷰

어댑터뷰 04 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adatper View) 란? u 어댑터뷰의항목하나는단순한문자열이나이미지뿐만아니라, 임의의뷰가될수 있음 이미지뷰 u 커스텀어댑터뷰설정절차 1 2 항목을위한 XML 레이아웃정의 어댑터정의 3 어댑터를생성하고어댑터뷰객체에연결

More information

C++ Programming

C++ Programming C++ Programming 예외처리 Seo, Doo-okok clickseo@gmail.com http://www.clickseo.com 목 차 예외처리 2 예외처리 예외처리 C++ 의예외처리 예외클래스와객체 3 예외처리 예외를처리하지않는프로그램 int main() int a, b; cout > a >> b; cout

More information

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - Java7.pptx HPC & OT Lab. 1 HPC & OT Lab. 2 실습 7 주차 Jin-Ho, Jang M.S. Hanyang Univ. HPC&OT Lab. jinhoyo@nate.com HPC & OT Lab. 3 Component Structure 객체 (object) 생성개념을이해한다. 외부클래스에대한접근방법을이해한다. 접근제어자 (public & private)

More information

제8장 자바 GUI 프로그래밍 II

제8장 자바 GUI 프로그래밍 II 제8장 MVC Model 8.1 MVC 모델 (1/7) MVC (Model, View, Controller) 모델 스윙은 MVC 모델에기초를두고있다. MVC란 Xerox의연구소에서 Smalltalk 언어를바탕으로사용자인터페이스를개발하기위한방법 MVC는 3개의구성요소로구성 Model : 응용프로그램의자료를표현하기위한모델 View : 자료를시각적으로 (GUI 방식으로

More information

JAVA PROGRAMMING 실습 08.다형성

JAVA PROGRAMMING 실습 08.다형성 2015 학년도 2 학기 1. 추상메소드 선언은되어있으나코드구현되어있지않은메소드 abstract 키워드사용 메소드타입, 이름, 매개변수리스트만선언 public abstract String getname(); public abstract void setname(string s); 2. 추상클래스 abstract 키워드로선언한클래스 종류 추상메소드를포함하는클래스

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 5 장생성자와접근제어 1. 객체지향기법을이해한다. 2. 클래스를작성할수있다. 3. 클래스에서객체를생성할수있다. 4. 생성자를이용하여객체를초기화할수 있다. 5. 접근자와설정자를사용할수있다. 이번장에서만들어볼프로그램 생성자 생성자 (constructor) 는초기화를담당하는함수 생성자가필요한이유 #include using namespace

More information

슬라이드 1

슬라이드 1 프로세싱 광운대학교로봇학부박광현 프로세싱실행 2 C:\processing-3.2.1 폴더 창나타내기 실행 정지 3 폭 높이 600 400 도형그리기 배경칠하기 5 background(255, 255, 255); R G B background(255, 0, 0); background(255, 122, 0); 선그리기 6 background(255, 122, 0);

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 11 장상속 1. 상속의개념을이해한다. 2. 상속을이용하여자식클래스를작성할수있다. 3. 상속과접근지정자와의관계를이해한다. 4. 상속시생성자와소멸자가호출되는순서를이해한다. 이번장에서만들어볼프로그램 class Circle { int x, y; int radius;... class Rect { int x, y; int width, height;... 중복 상속의개요

More information

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어서가장중요한부분이라고도할수있기때문입니다. 1. 새로운메크로생성 새메크로만들기버튺을클릭하여파일을생성합니다. 2. 메크로저장 -

More information

5장.key

5장.key JAVA Programming 1 (inheritance) 2!,!! 4 3 4!!!! 5 public class Person {... public class Student extends Person { // Person Student... public class StudentWorker extends Student { // Student StudentWorker...!

More information

<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63233C0E520B1D7B7A1C7C820C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 23 장그래픽프로그래밍 이번장에서학습할내용 자바에서의그래픽 기초사항 기초도형그리기 색상 폰트 Java 2D Java 2D를이용한그리기 Java 2D 를이용한채우기 도형회전과평행이동 자바를이용하여서화면에그림을그려봅시다. 자바그래픽데모 자바그래픽의두가지방법 자바그래픽 AWT Java 2D AWT를사용하면기본적인도형들을쉽게그릴수있다. 어디서나잘실행된다.

More information

PowerPoint Template

PowerPoint Template JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것

More information

Visual Basic 반복문

Visual Basic 반복문 학습목표 반복문 For Next문, For Each Next문 Do Loop문, While End While문 구구단작성기로익히는반복문 2 5.1 반복문 5.2 구구단작성기로익히는반복문 3 반복문 주어진조건이만족하는동안또는주어진조건이만족할때까지일정구간의실행문을반복하기위해사용 For Next For Each Next Do Loop While Wend 4 For

More information

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다. Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:

More information

Microsoft PowerPoint - ÀÚ¹Ù08Àå-1.ppt

Microsoft PowerPoint - ÀÚ¹Ù08Àå-1.ppt AWT 컴포넌트 (1) 1. AWT 패키지 2. AWT 프로그램과이벤트 3. Component 클래스 4. 컴포넌트색칠하기 AWT GUI 를만들기위한 API 윈도우프로그래밍을위한클래스와도구를포함 Graphical User Interface 그래픽요소를통해프로그램과대화하는방식 그래픽요소를 GUI 컴포넌트라함 윈도우프로그램만들기 간단한 AWT 프로그램 import

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean

More information

gnu-lee-oop-kor-lec06-3-chap7

gnu-lee-oop-kor-lec06-3-chap7 어서와 Java 는처음이지! 제 7 장상속 Super 키워드 상속과생성자 상속과다형성 서브클래스의객체가생성될때, 서브클래스의생성자만호출될까? 아니면수퍼클래스의생성자도호출되는가? class Base{ public Base(String msg) { System.out.println("Base() 생성자 "); ; class Derived extends Base

More information

PowerPoint Presentation

PowerPoint Presentation Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음

More information

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

var answer = confirm( 확인이나취소를누르세요.); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write( 확인을눌렀습니다.); else { document.write( 취소를눌렀습니다.); 자바스크립트 (JavaScript) - HTML 은사용자에게인터페이스 (interface) 를제공하는언어 - 자바스크립트는서버로데이터를전송하지않고서할수있는데이터처리를수행한다. - 자바스크립트는 HTML 나 JSP 에서작성할수있고 ( 내부스크립트 ), 별도의파일로도작성이가능하다 ( 외 부스크립트 ). - 내부스크립트 - 외부스크립트

More information

01-OOPConcepts(2).PDF

01-OOPConcepts(2).PDF Object-Oriented Programming Concepts Tel: 02-824-5768 E-mail: hhcho@selabsoongsilackr? OOP (Object) (Encapsulation) (Message) (Class) (Inheritance) (Polymorphism) (Abstract Class) (Interface) 2 1 + = (Dependency)

More information

디지털영상처리3

디지털영상처리3 비트맵 BMP 파일의 실제 BMP 파일의 BMP 파일을 화면에 개요 이해 분석 출력 } 비트맵 (bitmap) 윈도우즈에서영상을표현하기위해사용되는윈도우즈 GDI(Graphic Device Interface) 오브젝트의하나 } 벡터그래픽 (vector graphics) 점, 선, 면등의기본적인그리기도구를이용하여그림을그리는방식 } 윈도우즈 GDI(Graphic

More information

윈도우시스템프로그래밍

윈도우시스템프로그래밍 데이타베이스 MySQL 을위한 MFC 를사용한 ODBC 프로그래밍 2013.05.15. 오병우 컴퓨터공학과금오공과대학교 http://www.apmsetup.com 또는 http://www.mysql.com APM Setup 설치발표자료참조 Department of Computer Engineering 2 DB 에속한테이블보기 show tables; 에러발생

More information

Microsoft PowerPoint PythonGUI-sprite

Microsoft PowerPoint PythonGUI-sprite (Sprite) 순천향대학교컴퓨터공학과 이상정 순천향대학교컴퓨터공학과 1 학습내용 소개 클래스 그룹클래스 충돌 블록수집게임예 게임레벨증가및점수표시 이동 순천향대학교컴퓨터공학과 2 소개 (sprite) 큰그래픽장면의부분으로사용되는단일 2차원이미지 => 쪽화면 게임의장면에서서로상호작용 ( 충돌등 ) 하는물체 => 캐릭터, 아바타 파이게임에서는일반적으로클래스로구현된객체

More information

윈도우시스템프로그래밍

윈도우시스템프로그래밍 데이터베이스및설계 MySQL 을위한 MFC 를사용한 ODBC 프로그래밍 2012.05.10. 오병우 컴퓨터공학과금오공과대학교 http://www.apmsetup.com 또는 http://www.mysql.com APM Setup 설치발표자료참조 Department of Computer Engineering 2 DB 에속한테이블보기 show tables; 에러발생

More information

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 6.1 함수프로시저 6.2 서브프로시저 6.3 매개변수의전달방식 6.4 함수를이용한프로그래밍 3 프로시저 (Procedure) 프로시저 (Procedure) 란무엇인가? 논리적으로묶여있는하나의처리단위 내장프로시저 이벤트프로시저, 속성프로시저, 메서드, 비주얼베이직내장함수등

More information

학습목표 텍스트파일을다룰수있다. 스트림읽기, 쓰기를안다. 2

학습목표 텍스트파일을다룰수있다. 스트림읽기, 쓰기를안다. 2 학습목표 텍스트파일을다룰수있다. 스트림읽기, 쓰기를안다. 2 8.1 텍스트파일다루기 8.2 스트림읽기, 쓰기 3 텍스트파일 문자, 숫자, 단어들이하나이상의줄로구성 파일확장명 :.txt,.ini,.log, OpenFileDialog 컨트롤 : 파일의위치를사용자가쉽게선택가능 Filter 속성 : 파일의형식선택가능 ShowDialog 메서드 : 열기대화상자 FileName

More information

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

More information

Modern Javascript

Modern Javascript ES6 - Arrow Function Class Template String Destructuring Default, Rest, Spread let, const for..of Promises Module System Map, Set * Generator * Symbol * * https://babeljs.io/ Babel is a JavaScript compiler.

More information

Microsoft PowerPoint - 2강

Microsoft PowerPoint - 2강 컴퓨터과학과 김희천교수 학습개요 Java 언어문법의기본사항, 자료형, 변수와상수선언및사용법, 각종연산자사용법, if/switch 등과같은제어문사용법등에대해설명한다. 또한 C++ 언어와선언 / 사용방법이다른 Java의배열선언및사용법에대해서설명한다. Java 언어의효과적인활용을위해서는기본문법을이해하는것이중요하다. 객체지향의기본개념에대해알아보고 Java에서어떻게객체지향적요소를적용하고있는지살펴본다.

More information

[ 그림 8-1] XML 을이용한옵션메뉴설정방법 <menu> <item 항목ID" android:title=" 항목제목 "/> </menu> public boolean oncreateoptionsmenu(menu menu) { getme

[ 그림 8-1] XML 을이용한옵션메뉴설정방법 <menu> <item 항목ID android:title= 항목제목 /> </menu> public boolean oncreateoptionsmenu(menu menu) { getme 8 차시메뉴와대화상자 1 학습목표 안드로이드에서메뉴를작성하고사용하는방법을배운다. 안드로이드에서대화상자를만들고사용하는방법을배운다. 2 확인해볼까? 3 메뉴 1) 학습하기 [ 그림 8-1] XML 을이용한옵션메뉴설정방법 public boolean

More information

디지털영상처리3

디지털영상처리3 비트맵개요 BMP 파일의이해실제 BMP 파일의분석 BMP 파일을화면에출력 } 비트맵 (bitmap) 윈도우즈에서영상을표현하기위해사용되는윈도우즈 GDI(Graphic Device Interface) 오브젝트의하나 } 벡터그래픽 (vector graphics) 점, 선, 면등의기본적인그리기도구를이용하여그림을그리는방식 } 윈도우즈 GDI(Graphic Device

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3

More information

Javascript

Javascript 1. 이벤트와이벤트핸들러의이해 이벤트 (Event) 는웹브라우저에서발생하는다양한사건을말합니다. 예를들면, 버튼을마우스로을했다거나브라우저를닫았다거나 Enter 키를눌렀다거나등등아주다양한사건들이있습니다. 그렇다면이벤트핸들러 (Event Handler) 는무엇일까요? 이다양한이벤트들을핸들링 ( 처리 ) 해주는것입니다. 예를들면, 어떤버튼을했을때메시지창이뜨게하는등을말합니다.

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT T9 & AUTOMATA 2007. 3. 23 PLATFORM TEAM 정용학 차례 T9 개요 새로운언어 (LDB) 추가 T9 주요구조체 / 주요함수 Automata 개요 Automata 주요함수 추후세미나계획 질의응답및토의 T9 ( 2 / 30 ) T9 개요 일반적으로 cat 이라는단어를쓸려면... 기존모드 (multitap) 2,2,2, 2,8 ( 총 6번의입력

More information

1

1 1 2 3 4 5 6 b b t P A S M T U s 7 m P P 8 t P A S M T U s 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Chapter 1 29 1 2 3 4 18 17 16 15 5 6 7 8 9 14 13 12 11 10 1 2 3 4 5 9 10 11 12 13 14 15

More information

C# 입문 : 이론과 실습

C# 입문 : 이론과 실습 대화상자 메시지상자 공통대화상자 [2/33] 대화상자의용도 사용자와애플리케이션갂의교량역할. 주로소량의데이터를입출력하기위한수단. 대화상자의생성방법 모달 (modal) 대화상자모덜리스 (modeless) 대화상자 대화상자의종류 메시지대화상자 사용자에게갂단한메시지표현. 공통대화상자 윈도우운영체제에서기본적으로제공. 열기, 저장, 글꼴, 색, 인쇄, 페이지설정등. [3/33]

More information

Visual Basic 기본컨트롤

Visual Basic 기본컨트롤 학습목표 폼 ( Form) 폼의속성, 컨트롤이름, 컨트롤메서드 기본컨트롤 레이블, 텍스트박스, 버튼, 리스트박스 이벤트 버튼 기본컨트롤실습 2 2.1 폼 (Form) 2.2 기본컨트롤 2.3 기본컨트롤실습 3 폼 - 속성 속성 (Name) AutoSize BackColor Font ForeColor Icon StartPosition Transparency WindowState

More information

Microsoft PowerPoint - 6-PythonGUI-sprite

Microsoft PowerPoint - 6-PythonGUI-sprite (Computer Science with Python and Pygame, Ch.14 introduction to Sprites) 순천향대학교컴퓨터공학과이상정 순천향대학교컴퓨터공학과 1 학습내용 스프라이트클래스 그룹클래스 스프라이트충돌 블록수집게임예 게임레벨증가및점수표시 스프라이트이동 순천향대학교컴퓨터공학과 2 (1) 스프라이트 (sprite) 큰그래픽장면의부분으로사용되는단일

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program

More information

Contents. 1. PMD ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 2. Metrics ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 3. FindBugs ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 4. ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ

Contents. 1. PMD ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 2. Metrics ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 3. FindBugs ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 4. ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 정적분석서 - 영단어수집왕 - Team.# 3 과목명 소프트웨어모델링및분석 담당교수 유준범교수님 201011320 김용현 팀원 201111360 손준익 201111347 김태호 제출일자 2015-06-09 1 Contents. 1. PMD ㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍㆍ 2. Metrics

More information

Microsoft PowerPoint - 09-CE-5-윈도우 핸들

Microsoft PowerPoint - 09-CE-5-윈도우 핸들 순천향대학교컴퓨터학부이상정 1 학습내용 윈도우핸들 윈도우찿기 윈도우확인및제거 윈도우숨기기 윈도우포커스 윈도우텍스트 윈도우핸들 순천향대학교컴퓨터학부이상정 3 핸들 (handle) 윈도우에서구체적인어떤대상을구분하기위해지정되는고유의번호 32비트의정수값 핸들은운영체제가발급하고사용자가이값을사용 실제값이무엇인지는몰라도상관없음 윈도우, DC, 브러쉬등등 순천향대학교컴퓨터학부이상정

More information

gnu-lee-oop-kor-lec10-1-chap10

gnu-lee-oop-kor-lec10-1-chap10 어서와 Java 는처음이지! 제 10 장이벤트처리 이벤트분류 액션이벤트 키이벤트 마우스이동이벤트 어댑터클래스 스윙컴포넌트에의하여지원되는이벤트는크게두가지의카테고리로나누어진다. 사용자가버튼을클릭하는경우 사용자가메뉴항목을선택하는경우 사용자가텍스트필드에서엔터키를누르는경우 두개의버튼을만들어서패널의배경색을변경하는프로그램을작성하여보자. 이벤트리스너는하나만생성한다. class

More information

슬라이드 1

슬라이드 1 핚국산업기술대학교 제 14 강 GUI (III) 이대현교수 학습안내 학습목표 CEGUI 라이브러리를이용하여, 게임메뉴 UI 를구현해본다. 학습내용 CEGUI 레이아웃의로딩및렌더링. OIS 와 CEGUI 의연결. CEGUI 위젯과이벤트의연동. UI 구현 : 하드코딩방식 C++ 코드를이용하여, 코드내에서직접위젯들을생성및설정 CEGUI::PushButton* resumebutton

More information

자바GUI실전프로그래밍2_장대원.PDF

자바GUI실전프로그래밍2_장대원.PDF JAVA GUI - 2 JSTORM http://wwwjstormpekr JAVA GUI - 2 Issued by: < > Document Information Document title: JAVA GUI - 2 Document file name: Revision number: Issued by: Issue Date:

More information

; struct point p[10] = {{1, 2, {5, -3, {-3, 5, {-6, -2, {2, 2, {-3, -3, {-9, 2, {7, 8, {-6, 4, {8, -5; for (i = 0; i < 10; i++){ if (p[i].x > 0 && p[i

; struct point p[10] = {{1, 2, {5, -3, {-3, 5, {-6, -2, {2, 2, {-3, -3, {-9, 2, {7, 8, {-6, 4, {8, -5; for (i = 0; i < 10; i++){ if (p[i].x > 0 && p[i ; struct point p; printf("0이아닌점의좌표를입력하시오 : "); scanf("%d %d", &p.x, &p.y); if (p.x > 0 && p.y > 0) printf("1사분면에있다.\n"); if (p.x < 0 && p.y > 0) printf("2사분면에있다.\n"); if (p.x < 0 && p.y < 0) printf("3사분면에있다.\n");

More information

3ÆÄÆ®-11

3ÆÄÆ®-11 Chapter 11 Chapter 12 Chapter 13 Chapter 14 Chapter 15 Chapter 16 Chapter 17 C # N e t w o r k P r o g r a m m i n g Part 3 _ chapter 11 ICMP >>> 430 Chapter 11 _ 1 431 Part 3 _ 432 Chapter 11 _ N o t

More information

슬라이드 1

슬라이드 1 UNIT 16 예외처리 로봇 SW 교육원 3 기 최상훈 학습목표 2 예외처리구문 try-catch-finally 문을사용핛수있다. 프로그램오류 3 프로그램오류의종류 컴파일에러 (compile-time error) : 컴파일실행시발생 럮타임에러 (runtime error) : 프로그램실행시발생 에러 (error) 프로그램코드에의해서해결될수없는심각핚오류 ex)

More information

윈도우즈프로그래밍(1)

윈도우즈프로그래밍(1) 제어문 (2) For~Next 문 윈도우즈프로그래밍 (1) ( 신흥대학교컴퓨터정보계열 ) 2/17 Contents 학습목표 프로그램에서주어진특정문장을부분을일정횟수만큼반복해서실행하는문장으로 For~Next 문등의구조를이해하고활용할수있다. 내용 For~Next 문 다중 For 문 3/17 제어문 - FOR 문 반복문 : 프로그램에서주어진특정문장들을일정한횟수만큼반복해서실행하는문장

More information

Microsoft PowerPoint - 09-Object Oriented Programming-3.pptx

Microsoft PowerPoint - 09-Object Oriented Programming-3.pptx Development of Fashion CAD System 9. Object Oriented Programming-3 Sungmin Kim SEOUL NATIONAL UNIVERSITY Introduction Topics Object Oriented Programming (OOP) 정의 복수의 pattern object 로 이루어지는 새로운 class Pattern

More information

8장.그래픽 프로그래밍

8장.그래픽 프로그래밍 윈도우프레임 도형그리기색과폰트이미지그리기그리기응용 2 윈도우프레임 제목표시줄을갖는윈도우를의미 생성과정 1 JFrame 객체생성 2 프레임의크기설정 3 프레임의제목설정 4 기본닫힘연산지정 5 프레임이보이도록만듦. 3 윈도우프레임예제 [ 예제 8.1 - EmptyFrameViewer.java] import javax.swing.*; public class EmptyFrameViewer

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 3 if, if else, if else if, switch case for, while, do while break, continue : System.in, args, JOptionPane for (,, ) @ vs. logic data method variable Data Data Flow (Type), ( ) @ Member field

More information

Structure and Interpretation of Computer Programs: Assignment 3 Seung-Hoon Na October 4, George (아래 3개의 문제에 대한 구현이 모두 포함된 george.rkt파일을 제출하시오.

Structure and Interpretation of Computer Programs: Assignment 3 Seung-Hoon Na October 4, George (아래 3개의 문제에 대한 구현이 모두 포함된 george.rkt파일을 제출하시오. Structure and Interpretation of Computer Programs: Assignment 3 Seung-Hoon Na October 4, 2018 1 George (아래 3개의 문제에 대한 구현이 모두 포함된 george.rkt파일을 제출하시오. 실행후 Problem 1.3에 대한 Display결과가 나와야 함) George 그림은 다음과

More information

C# Programming Guide - Types

C# Programming Guide - Types C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든

More information

C# 입문 : 이론과 실습

C# 입문 : 이론과 실습 식 (expression) 문장에서값을계산하는데사용식은연산자 (operator) 와피연자 (operand) 로구성식의값에따라 산술식, 관계식, 논리식으로구분 연산자 (operator) 식의의미를결정피연산자가어떻게계산될지를나타내는기호 C# 언어스펙 48개의연산자정의 연산자종류 산술연산자 : + - * / % 단항 + 단항 - 관계연산자 : > >= <

More information

제11장 프로세스와 쓰레드

제11장 프로세스와 쓰레드 제9장자바쓰레드 9.1 Thread 기초 (1/5) 프로그램 명령어들의연속 (a sequence of instruction) 프로세스 / Thread 실행중인프로그램 (program in execution) 프로세스생성과실행을위한함수들 자바 Thread 2 9.1 Thread 기초 (2/5) 프로세스단위작업의문제점 프로세스생성시오버헤드 컨텍스트스위치오버헤드

More information

Microsoft PowerPoint - 14주차 강의자료

Microsoft PowerPoint - 14주차 강의자료 Java 로만드는 Monster 잡기게임예제이해 2014. 12. 2 게임화면및게임방법 기사초기위치 : (0,0) 아이템 10 개랜덤생성 몬스터 10 놈랜덤생성 Frame 하단에기사위치와기사파워출력방향키로기사이동아이템과몬스터는고정종료버튼클릭하면종료 Project 구성 GameMain.java GUI 환경설정, Main Method 게임객체램덤위치에생성 Event

More information

[ 그림 7-1] 프로젝트 res 폴더 이미지뷰 [ 예제 7-1] 이미지뷰 1 <LinearLayout 2 ~~~~ 중간생략 ~~~~ 3 android:orientation="vertical" > 4 <ImageView

[ 그림 7-1] 프로젝트 res 폴더 이미지뷰 [ 예제 7-1] 이미지뷰 1 <LinearLayout 2 ~~~~ 중간생략 ~~~~ 3 android:orientation=vertical > 4 <ImageView 7 차시이미지처리 1 학습목표 이미지뷰를사용하는방법을배운다. 비트맵을사용하는방법을배운다. 2 확인해볼까? 3 이미지뷰와이미지버튼 1) 학습하기 [ 그림 7-1] 프로젝트 res 폴더 이미지뷰 [ 예제 7-1] 이미지뷰 1 4

More information

슬라이드 1

슬라이드 1 모바일소프트웨어프로젝트 지도 API 1 조 20070216 김성수 20070383 김혜준 20070965 이윤상 20071335 최진 1 매시업? 공개 API? 2 매시업 웹으로제공하고있는정보와서비스를융합하여새로운소프트웨어나서비스, 데이터베이스등을만드는것 < 최초의매시업 > 3 공개 API 누구나사용할수있도록공개된 API 지도, 검색등다양한서비스들에서제공 대표적인예

More information

JUNIT 실습및발표

JUNIT 실습및발표 JUNIT 실습및발표 JUNIT 접속 www.junit.org DownLoad JUnit JavaDoc API Document 를참조 JUNIT 4.8.1 다운로드 설치파일 (jar 파일 ) 을다운로드 CLASSPATH 를설정 환경변수에서설정 실행할클래스에서 import JUnit 설치하기 테스트실행주석 @Test Test 를실행할 method 앞에붙임 expected

More information

(Microsoft PowerPoint - 11\300\345.ppt [\310\243\310\257 \270\360\265\345])

(Microsoft PowerPoint - 11\300\345.ppt [\310\243\310\257 \270\360\265\345]) 입출력 C++ 의효율적인입출력방법을배워보자. 이장에서다룰내용 1 cin 과 cout 을이용한입출력 2 입출력연산자중복 3 조작자생성 4 파일입출력 01_cin 과 cout 을이용한입출력 포맷입출력 C++ 의표준입출력은 cin, cout 을사용한다. C 의 printf 는함수이므로매번여러인자를입력해줘야하지만, cin/cout 에서는형식을한번만정의하면계속사용할수있다.

More information

09-interface.key

09-interface.key 9 Database insert(record r): boolean find(key k): Record 1 Record getkey(): Key * Record Key Database.? Key equals(key y): boolean Database insert(record r): boolean find(key k): Record * Database OK 1

More information

rmi_박준용_final.PDF

rmi_박준용_final.PDF (RMI) - JSTORM http://wwwjstormpekr (RMI)- Document title: Document file name: Revision number: Issued by: Document Information (RMI)- rmi finaldoc Issue Date: Status:

More information

4장기본프로그래밍2

4장기본프로그래밍2 4-2 마우스 (Mouse) 마우스이벤트 Click 이벤트 마우스버튼이눌렸다가떼어질때발생 DblClick 이벤트 마우스버튼이두번눌렸다가떼어질때발생 MouseDown 이벤트 마우스버튼이눌렸을때발생 MouseUp 이벤트 마우스버튼이떼어질때발생 MouseMove 이벤트 마우스가움직일때발생 DragOver 이벤트 마우스버튼을누른상태에서끌기를했을때발생 DragDrop

More information

Chapter 1

Chapter 1 3 Oracle 설치 Objectives Download Oracle 11g Release 2 Install Oracle 11g Release 2 Download Oracle SQL Developer 4.0.3 Install Oracle SQL Developer 4.0.3 Create a database connection 2 Download Oracle 11g

More information

유니티 변수-함수.key

유니티 변수-함수.key C# 1 or 16 (Binary or Hex) 1:1 C# C# (Java, Python, Go ) (0101010 ). (Variable) : (Value) (Variable) : (Value) ( ) (Variable) : (Value) ( ) ; (Variable) : (Value) ( ) ; = ; (Variable) : (Value) (Variable)

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 CHAPTER 11. 자바스크립트와캔버스로게임 만들기 캔버스 캔버스는 요소로생성 캔버스는 HTML 페이지상에서사각형태의영역 실제그림은자바스크립트를통하여코드로그려야한다. 컨텍스트객체 컨텍스트 (context) 객체 : 자바스크립트에서물감과붓의역할을한다. var canvas = document.getelementbyid("mycanvas"); var

More information

Microsoft PowerPoint - 09-EDU-15-채팅 프로그래밍

Microsoft PowerPoint - 09-EDU-15-채팅 프로그래밍 15. 채팅프로그램 순천향대학교컴퓨터학부이상정 1 학습내용 사용자인터페이스 프로그램구성 TCP 연결설정프로그램 서버연결설정 클라이언트연결설정 TCP 데이터송수신 순천향대학교컴퓨터학부이상정 2 사용자인터페이스, Form 클래스 순천향대학교컴퓨터학부이상정 3 1:1 채팅프로그램 한프로그램이동시에서버와클라이언트로동작 프로그램시작시서버로동작 서버소켓생성하고상대방접속요청대기

More information

Visual Basic Visual Basic 소개

Visual Basic Visual Basic 소개 1. Visual Basic 소개 학습목표 MS 비주얼베이직 6.0과 2010의차이 비주얼베이직 2010 express 설치 비주얼베이직 2010의통합개발환경 프로그램의시작과실행 2 1. 소개 1.1 MS 비주얼베이직 6.0과 2010의차이 1.2 비주얼베이직 2010 express 설치 1.3 비주얼베이직 2010의통합개발환경 1.4 프로그램의시작과실행 3

More information

이장에서다룰내용 테두리를제어하는스타일시트 외부여백 (Margin) 과내부여백 (Padding) 관련속성 위치관련속성 2

이장에서다룰내용 테두리를제어하는스타일시트 외부여백 (Margin) 과내부여백 (Padding) 관련속성 위치관련속성 2 03 장. 테두리여백지정하는속성 이번장에서는테이블, 레이어, 폼양식등의더예쁘게꾸미기위해서 CSS 를이용하여 HTML 요소의테두리속성을바꾸어보자. 이장에서다룰내용 1 2 3 테두리를제어하는스타일시트 외부여백 (Margin) 과내부여백 (Padding) 관련속성 위치관련속성 2 01. 테두리를제어하는스타일시트 속성값설명 border-width border-left-width

More information

History Created adstarsdk Reference Manual cadvanced Digital Chips Inc. All right reserved. No part of this document may be reproduced in a

History Created adstarsdk Reference Manual cadvanced Digital Chips Inc. All right reserved. No part of this document may be reproduced in a EGL - Embedded Graphic Library - Ver 1.00 December 31. 2012 Advanced Digital Chips Inc. 1 History 2012-12-31 Created adstarsdk Reference Manual cadvanced Digital Chips Inc. All right reserved. No part

More information

Convenience Timetable Design

Convenience Timetable Design Convenience Timetable Design Team 4 2 Contents 1. Introduction 2. Decomposition description 3. Dependency description 4. Inter face description 5. Detailed design description 3 1. Introduction Purpose

More information

Microsoft PowerPoint - HS6000 Full HD Subtitle Generator Module Presentation

Microsoft PowerPoint - HS6000 Full HD Subtitle Generator Module Presentation HS6000 Full HD Subtitle Generator Module High-performance Network DVR Solution Preliminary Product Overview (Without notice, following described technical spec. can be changed) AddPac Technology 2010,

More information

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 8 장클래스와객체 I 이번장에서학습할내용 클래스와객체 객체의일생직접 메소드클래스를 필드작성해 UML 봅시다. QUIZ 1. 객체는 속성과 동작을가지고있다. 2. 자동차가객체라면클래스는 설계도이다. 먼저앞장에서학습한클래스와객체의개념을복습해봅시다. 클래스의구성 클래스 (class) 는객체의설계도라할수있다. 클래스는필드와메소드로이루어진다.

More information

Microsoft PowerPoint - logo_2-미해답.ppt [호환 모드]

Microsoft PowerPoint - logo_2-미해답.ppt [호환 모드] Chap.2 Logo 프로그래밍기초 - 터틀그래픽명령어 ( 기본, 고급 ) 학습목표 터틀의이동과선그리기에대해살펴본다. 터틀의회전에대해살펴본다. 터틀펜과화면제어에대해살펴본다. 2012. 5. 박남제 namjepark@jejunu.ac.kr < 이동하기 > - 앞으로이동하기 forward 100 터틀이 100 픽셀만큼앞으로이동 2 < 이동하기 > forward(fd)

More information

쉽게 풀어쓴 C 프로그래밊

쉽게 풀어쓴 C 프로그래밊 Power Java 제 27 장데이터베이스 프로그래밍 이번장에서학습할내용 자바와데이터베이스 데이터베이스의기초 SQL JDBC 를이용한프로그래밍 변경가능한결과집합 자바를통하여데이터베이스를사용하는방법을학습합니다. 자바와데이터베이스 JDBC(Java Database Connectivity) 는자바 API 의하나로서데이터베이스에연결하여서데이터베이스안의데이터에대하여검색하고데이터를변경할수있게한다.

More information

윈도우시스템프로그래밍

윈도우시스템프로그래밍 객체지향프로그래밍응용 Chap 4. 대화상자와컨트롤 (#1) 2013.09.27. 오병우 컴퓨터공학과금오공과대학교 Control 들을가진윈도우 Dialog 개요 사용자의입력을받기위한 Object 의집합 종류 프로그램수행도중사용자의입력이필요할때다이얼로그박스출력 다이얼로그박스는사용자로부터입력받은데이터를메인루틴에넘기고소멸 Modal Dialog Parent window

More information

슬라이드 1

슬라이드 1 Drawing Program For Kid s Education 어린이교육용그림판 1. Refine Notes 2. GUI Interface 3 Real Use Case + Sequence Diagram 4. System Architecture 5. Design Class Diagram 01 Refine Notes(1/6) 1.Use Case 수정 점수파일저장하기,

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 11 장상속 이번장에서학습할내용 상속이란? 상속의사용 메소드재정의 접근지정자 상속과생성자 Object 클래스 종단클래스 상속을코드를재사용하기위한중요한기법입니다. 상속이란? 상속의개념은현실세계에도존재한다. 상속의장점 상속의장점 상속을통하여기존클래스의필드와메소드를재사용 기존클래스의일부변경도가능 상속을이용하게되면복잡한 GUI 프로그램을순식간에작성

More information

12-file.key

12-file.key 11 (String).. java.lang.stringbuffer. s String s = "abcd"; s = s + "e"; a b c d e a b c d e ,., "910359,, " "910359" " " " " (token) (token),, (delimiter). java.util.stringtokenizer String s = "910359,,

More information

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - 04-UDP Programming.ppt Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여

More information

<432B2BC7C1B7CEB1D7B7A1B9D628BABBB9AE5FC3D6C1BE295B315D2E687770>

<432B2BC7C1B7CEB1D7B7A1B9D628BABBB9AE5FC3D6C1BE295B315D2E687770> 저 자 약 력이상정순천향대학교컴퓨터학부교수, sjlee@sch.ac.kr 조영일수원대학교컴퓨터학과교수, yicho@suwon.ac.kr 김은성순천향대학교전기전자공학과교수, eskim@sch.ac.kr 박종득공주대학교컴퓨터공학부교수, pjd@kongju.ac.kr C++ 언어는 C 에 C 언어의증가연산자 ++ 를덧붙인 C++ 라는이름이의미하는바와같이 C 언어의문법을대부분그대로사용하면서객체지향프로그래밍기법을추가한

More information

untitled

untitled A Leader of Enterprise e-business Solution FORCS Co., LTD 1 OZ Application Getting Started (ver 5.1) 2 FORCS Co., LTD A Leader of Enterprise e-business Solution FORCS Co., LTD 3 OZ Application Getting

More information

그래픽 프로그래밍

그래픽 프로그래밍 제 13 장그래픽프로그래밍 13.1 베지어곡선 실습 13-1 알고리즘을통한베지어곡선그리기 실습 13-2 컨트롤포인트이동및베지어곡선 해상도설정하기 그래픽프로그래밍 베지어곡선 베지어곡선알고리즘은곡선을생성하는대표적이고기본이되는알고리즘이다. MFC 에서의베지어곡선함수 BOOL PolyBezier(const POINT* lppoints, int ncount); lppoints

More information

<4F B8A620C0CCBFEBC7D120C8B8B7CE20C0DBBCBAC0C720B1E2C3CA2E687770>

<4F B8A620C0CCBFEBC7D120C8B8B7CE20C0DBBCBAC0C720B1E2C3CA2E687770> Orcad 9.2 capture CIS(Component Information System) 을이용한회로도작성의기초 한국해양대학교지능로봇및자동화실험실 1. 시작 모든프로그램 Orcad Family Release 9.2 Capture CIS 를선택하여프로그램을실행시킨다. 2. New Project를선택하여프로젝트생성윈도우를띄우고나서, 오른쪽의그림예시와같이프로젝트명과디렉토리를설정해준다.

More information

Microsoft PowerPoint - 07-C#-13-ADO.ppt [호환 모드]

Microsoft PowerPoint - 07-C#-13-ADO.ppt [호환 모드] 데이터베이스기초 ADO.NET MS Access 데이터베이스만들기 DataAdapter 클래스예 Connection, Command 클래스예 DataReader 클래스예레코드추가예레코드수정예레코드삭제예 순천향대학교컴퓨터학부이상정 1 데이터베이스기초 순천향대학교컴퓨터학부이상정 2 데이터베이스용어 필드 (field) 가장작은단위의의미있는데이터표현 교수이름, 학번등

More information

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 제이쿼리 () 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 CSS와마찬가지로, 문서에존재하는여러엘리먼트를접근할수있다. 엘리먼트접근방법 $( 엘리먼트 ) : 일반적인접근방법

More information

비긴쿡-자바 00앞부속

비긴쿡-자바 00앞부속 IT COOKBOOK 14 Java P r e f a c e Stay HungryStay Foolish 3D 15 C 3 16 Stay HungryStay Foolish CEO 2005 L e c t u r e S c h e d u l e 1 14 PPT API C A b o u t T h i s B o o k IT CookBook for Beginner Chapter

More information

Week3

Week3 2015 Week 03 / _ Assignment 1 Flow Assignment 1 Hello Processing 1. Hello,,,, 2. Shape rect() ellipse() 3. Color stroke() fill() color selector background() 4 Hello Processing 4. Interaction setup() draw()

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information

Open GL

Open GL Graphics Basic Windows & OpenGL Programming 컴퓨터그래픽스연구실 OpenGL 관련참고사이트 OpenGL 공식사이트 http://www.opengl.org/ Khronos Group http://www.khronos.org/ Nehe Productions http://nehe.gamedev.net/ OpenGL 파일설정 압축을푼후다음경로로파일을복사

More information

MVVM 패턴의 이해

MVVM 패턴의 이해 Seo Hero 요약 joshua227.tistory. 2014 년 5 월 13 일 이문서는 WPF 어플리케이션개발에필요한 MVVM 패턴에대한내용을담고있다. 1. Model-View-ViewModel 1.1 기본개념 MVVM 모델은 MVC(Model-View-Contorl) 패턴에서출발했다. MVC 패턴은전체 project 를 model, view 로나누어

More information

tiawPlot ac 사용방법

tiawPlot ac 사용방법 tiawplot ac 매뉴얼 BORISOFT www.borisoft.co.kr park.ji@borisoft.co.kr HP : 00-370-077 Chapter 프로그램설치. 프로그램설치 3 2 Chapter tiawplot ac 사용하기.tiawPlot ac 소개 2.tiawPlot ac 실행하기 3. 도면파일등록및삭제 4. 출력장치설정 5. 출력옵션설정

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT 2007. 2. 5 PLATFORM TEAM 정용학 차례 CONTAINER & WIDGET SPECIAL WIDGET 질의응답및토의 2 Container LCD에보여지는화면한개 1개이상의 Widget을가짐 3 Container 초기화과정 ui_init UMP_F_CONTAINERMGR_Initialize UMP_H_CONTAINERMGR_Initialize

More information

자바 프로그래밍

자바 프로그래밍 5 (kkman@mail.sangji.ac.kr) (Class), (template) (Object) public, final, abstract [modifier] class ClassName { // // (, ) Class Circle { int radius, color ; int x, y ; float getarea() { return 3.14159

More information