윈도우 프로그래밍 실습 김 창 헌.

Slides:



Advertisements
Similar presentations
1 11 장 MDI 와 멀티미디어. 2 MDI 단일 문서 인터페이스 (SDI, Single Document Interface)  윈도에 있는 메모장이나 워드 패드와 같이 단지 하나의 폼으 로 이루어져 있는 프로그램 다중 문서 인터페이스 (MDI, Multiple Document.
Advertisements

Computer Graphics 윈도우 프로그래밍 김 창 헌김 창 헌. Computer Graphics 2 윈도우 시스템  윈도우  스크린 위에서 독립적으로 움직일 수 있는 사각형 영역  윈도우 시스템  유저와 어플리케이션간의 그래픽 스크린을 통한 인터페이스 를.
1 차시 : SW 코딩으로 배우는 3D 기초작품 및 톱니바퀴 만들기 1)SPL3D 프린팅 툴 설치하기 2) 도형 추가하기 3) 도형 연산 명령어 익히기 4)3D 프린터 출력을 위한 STL 파일 내보내기 5) 하트모양 만들기 6) 하트모양 열쇠고리 만들기 7) 변수와 수식.
1 컴퓨터정보과 MFC 의 개요 MFC 윈도우 애플리케이션을 생성하기 위해 만들어진 C++ 클래스 라이브러리 애플리케이션 프레임워크를 제공 MFC 의 이점 윈도우 프로그램 전문가로 만들어 준다. 개발시간을 단축시키고, 이식성이 강한 코드를 작성 ActiveX, OLE,
MFC의 개요 MFC MFC의 이점 윈도우 애플리케이션을 생성하기 위해 만들어진 C++ 클래스 라이브러리
Format String Attack! 포맷 스트링 공격 경일대학교 사이버보안학과 학년 남주호.
Windows XP SP2 문제해결 Windows XP SP2를 설치한 회원께서는 Pop-up차단 기능과 ActiveX 설치의 어려움 발생 아래의 예는 안철수 바이러스 설치 시 문제점을 해결 하는 방법의 설명. 1. ActiveX 컨트롤 설치 ① 주소 표시줄 아래의 '이.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
목차 Contents 무선인터넷용 비밀번호 설정방법 Windows 7 Windows 8 Windows XP MAC OS.
기초C언어 제1주 실습 강의 소개, C언어 개요, Cygwin/Eclipse 사용 컴퓨터시뮬레이션학과 2016년 봄학기
ㅎㅎ C++ 프로그래밍의 첫 걸음 C++로 프로그래밍한다는 것의 의미 세상에서 가장 간단한 C++ 프로그램
Lecture 2 MFC and Application Frameworks
Lab 10 Guide: 프린터 출력 예제. 한 페이지의 그림 인쇄 (교재 24장, 쪽)
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
제4장 대화상자.
Image & Video processing
코크파트너 설치 가이드 Window 7.
Power Java 제3장 이클립스 사용하기.
Power Java 제3장 이클립스 사용하기.
Visual Basic 설치 컴퓨터응용 및 실습 I.
윤 홍 란 다이알로그(대화상자) 윤 홍 란
Outlook Express 메일 백업 및 복원가이드
C 언어 1 1주차 C언어 시작하기 - 1차시 C 언어 특징 및 프로젝트 생성 Programming Language.
나민영 서경대학교 컴퓨터공학과 CGVR Lab 같이만들어보자 5주차 OpenCV 설정 및 기초.
07. 메뉴와 대화상자 제목. 07. 메뉴와 대화상자 제목 메뉴를 작성하고 사용하는 방법을 배운다. 토스트의 다양한 출력 방법을 알아본다. 대화상자의 사용법을 익힌다.
마우스(Mouse) 다루기 컴퓨터응용 및 실습 I.
제4장 대화상자 4.1 CDialogEx 클래스 4.2 대화상자 기반의 프로그램 실습 4-1 MFC 기본 컨트롤 사용법 익히기
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
Visual Basic .NET 처음 사용하기.
3.2 SQL Server 설치 및 수행(계속) 시스템 데이터베이스 master
1. C++ 시작하기.
제 2 장 WML 시뮬레이터 및 무선인터넷 서버 설치
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
소프트웨어 분석과 설계 Struts2 & JBOSS 설치하기
WinCE Device Driver 실습 #3
WinCE Device Driver 실습 #2
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
분할 윈도, 다중 뷰… 영상 통신 연구실 권 동 진 발표 일 : 04월 27일.
10장. 예외처리.
2장 JSP 개발 환경 설정 이장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 어플리케이션 개발을 위해 반드시 이해하여야 할 웹 어플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
환경 설정 예제 데이터베이스 생성 - 그림 3.34의 SQL Server 관리 스튜디오 창의 왼쪽 영역의 데이터베
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
홀인원2.0 설치 메뉴얼.
영상처리 실습 인공지능연구실.
Lab 1 Guide: 교재 2장 DrawX ( 쪽)
2 보안 1 도구 윈도우 XP > 온밀크 프로그램 설치 장애 (보안 설정) / 품목추가 깨질 때 장애증상
3D 프린팅 프로그래밍 01 – 기본 명령어 강사: 김영준 목원대학교 겸임교수.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
Lab 8 Guide: 멀티스레딩 예제 2 * Critical Section을 이용한 멀티스레딩 동기화 (교재 15장, 쪽)
자바 5.0 프로그래밍.
1. 스크립트 작성 마법사 2. NSIS 스크립트 컴파일
컴퓨터 개론 및 실습 1주차 2015년 03월 05일.
7주차 실습 FPGA 보드 사용법.
( Windows Service Application Debugging )
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
DK-128 개발환경 설정 아이티즌 기술연구소
수동 설치시는 설치 방법 1. 두번에 설치 CD 속에 fscommand 폴더 밑에 Osstem 이라는 폴더를
영상처리 실습 (OpenCV + MFC) Chonbuk National University A.I. Lab.
.Net Web Application 2007 컴퓨터공학실험(Ⅰ)
메뉴(Menu) 컴퓨터응용 및 실습 I.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
시스템 인터페이스 Lab1 X-window 및 명령어 사용.
9 브라우저 객체 모델.
Android -Data Base 윤수진 GyeongSang Univ. IT 1.
무선랜 사용자 설명서 (Windows Vista 사용자).
Installation Guide.
Platform Builder 사용법.
1. SNMP Setting IP 설정 NetAgent Mini 카드에 제공된 CD의 Netility 프로그램을 설치하여 프로그램을 실행시킨다. Netility 프로그램을 실행하면 네트워크에 있는 SNMP 카드를 찾게 됩니다. “Configure”를 선택하면 IP 설정.
Power Point 예제 디자인 적용 (서식) - (디자인적용) - (원하는 디자인 선택)
CHAP 5. 메뉴와 대화상자.
Presentation transcript:

윈도우 프로그래밍 실습 김 창 헌

Visulal C++ 시작하기 시작 메뉴에 있는 아이콘을 클릭한다.

Visual C++ 개발 Tool 아이콘을 클릭하면 아래와 같은 프로그램 개발 도구가 화면에 나타난다.

Visual C++개발도구 구성 Project Workspace window 메뉴 바 File Edit Window Output Window

윈도우 어플리케이션 개발 과정 1. AppWizard 를 이용하여 윈도우 틀(framework) 형성 2. Visual design 단계 3. 코드 작성 단계 4. 컴파일 및 링크 (실행 파일 생성)

1. AppWizard 를 이용하여 윈도우 틀(framework) 형성

2. Visual design step 프로그램의 모양을 만듬. 리소스 편집기를 이용하여 사용자 인터페이스를 구성하는 오브젝트 생성 눈에 보이는 부분 설계 프로그램의 모양을 만듬. 비주얼 C++에 내장된 기능을 사용해서 여러가지 개체를 만듦.(푸쉬버튼,스크롤 바,라디오 버튼 등)

3. 코드 작성 단계 ( code-writing step) ClassWizard 를 이용하여 사용자 인터페이스 오브젝트에 대한 메시지 처리 코드 생성 혹은 에디터에 직접 코드 작성 눈에 보이지 않는 부분의 설계 - 코드와 리소스의 연결

4. Application source code 컴파일 및 링크 (실행파일 생성)

윈도우즈 프로그램 예제 1. 기본 윈도우 틀 만들기 2. 대화상자 (Dialog box)만들기 3. 그래픽 프로그램 도형 모양과 색깔 선택하여 도형 그리기.

윈도우즈 프로그래밍 예제 (I) 기본 윈도우 틀 만들기 File의 New 메뉴를 선택한다.

AppWizard 를 이용하여 기본 윈도우 틀 만들기 아무 기능도 수행하지 않는 골격 프로그램 Step1: “my”라는 이름의 프로젝트 생성 & 골격 코드 작성 1) File 메뉴의 New항목 2) MFC AppWizard선택 3) 프로젝트명 입력 4) OK버튼 클릭

1. 어플리케이션 특성 선택 Single document : 하나의 다큐먼트를 갖는 어플리케이션 Multiple documentation : 각각의 윈도우를 갖는 여러 개의 다큐먼트를 작업할 수 있는 어플리케이션 Dialog based : 다이얼로그 박스가 나타나는 어플리케이션

2. 데이터베이스 지원옵션 None Header files only : 데이터베이스 지원하는 AfxDb.h 헤더 파일을 포함하는 어플리케이션 생성. Database view without file support : 데이터베이스를 지원하는 어플리케이션은 생성하나 파일을 지원하지는 않음. Database view with file support : 데이터베이스와 파일 지원하는 어플리케이션

3. OLE 지원 옵션 None Container : OLE컨테이너 어플리케이션 생성. Mini-server : 단독적으로 실행될 수 없으며 단지 포함 객체만 생성하는 어플리케이션 Full-server : 단독적으로 실행될 수 있으며, 포함 연결 객체도 생성하는 어플리케이션 Both container and server : OLE컨테이너와 서버를 지원하는 어플리케이션 생성

4. 사용자 인터페이스 옵션 Docking toolbar : 이동가능한 툴바를 만듬. Initial status bar : 윈도우 하단에 상태바를 만듬 Printing and print preview : 인쇄와 관련된 메뉴 설정 Context-sensitive Help : 구문인식 도움말 제공하는데 사용되는 도움말 파일 생성. 3D controls : 입체적인 형태로 리소스를 이용 MAPI : 편지보내기와 관련된 메뉴 & 명령코드 Windows Socket : TCP/IP네트워크상에서 통신할 수 있는 어플리케이션 생성

5. 생성파일 내용옵션 결정 Yes, please : 소스파일에 주석문 추가 5. 생성파일 내용옵션 결정 Yes, please : 소스파일에 주석문 추가 No, thank you : 주석문 추가하지 않음. As a shared DLL : 공유 DLL사용 As a statically linked library :정적 링크 라이브러리

6. 생성된 클래스 명 및 파일명 지정 생성된 클래스들의 이름과 구현 파일명을 보여 줌. New Project Information 다이얼로그 박스가 출력.

7. AppWizard를 이용한 기본 윈도우 틀 생성 결과

윈도우 프로그래밍 예제 다이얼로그 박스 (대화상자) 속성 시트에서 도형의 모양과 칼라 선택하여 마우스 클릭한 지점에 도형 그리는 프로그램

Dialog Box 개요 대화상자 분류 사용자의 입력을 받아들이는 상자 모달 다이얼로그 박스 모델리스 다이얼로그 박스 메시지 박스 윈도우 공통 다이얼로그 박스.

대화 상자(Dialog Box)의 분류 모달 다이얼로그 박스(Modal Dialog Box) 다이얼로그 박스를 닫기 전까지는 해당 다이얼로그 박스 안에서의 작업 이외는 다른 작업을 할 수가 없다. 응용 모달 다이얼로그 박스 다이얼로그 박스를 생성한 응용프로그램이 아닌 다른 응용 프로그램의 윈도우로 전환할 수 있는 상자. 시스템 모달 다이얼로그 박스 다이얼로그 박스를 생성하지 않은 다른 응용프로그램의 작업도 할 수 없이 확면 중앙에 박스가 사라지지 않고 계속 응답요구. 운영체제에 치명적인 영향을 발생시켜, 문제가 해결되지 않으면 더 이상 진행할 수 없는 경우에 사용.

대화 상자(Dialog Box)의 분류 모델리스 다이얼로그 박스(Modeless Dialog Box) 메시지 박스 다이얼로그 박스를 닫지 않아도 다른 응용 프로그램을 실행할 수 있다. 예- search 메뉴의 Find 메뉴를 선택하여 ‘찾기’ 다이얼로그를 실행한 상태에서 다른 작업을 진행 할 수 있다. 메시지 박스 간단한 메시지를 표시하고 명령 버튼을 통하여 사용자로부터 입력 받을 때 사용되는 특별한 종류의 모달 다이얼로그 박스 윈도우 공통 다이얼로그 박스 응용 프로그램마다 공통적으로 많이 사용하는 다이얼로그 박스로 윈도우 운영체제가 제공. 예- Open, Save As, Print , etc…

Dialog Box 제작 과정 다이얼로그 에디터로 다이얼로그 박스를 디자인 ClassWizard로 다이얼로그 클래스 만듬 윈도우프로그램예제 Dialog Box 제작 과정 다이얼로그 에디터로 다이얼로그 박스를 디자인 ClassWizard로 다이얼로그 클래스 만듬 ClassWizard로 다이얼로그 리소스 컨트롤에대한 메시지 핸들러 설치 ClassWizard를 사용하여 다이얼로그 박스의 컨트롤과 관련된 데이터 멤버를 추가.

윈도우프로그램예제 Dialog Box 제작 AppWizard 사용하여 “hello” 프로젝트 파일을 생성하고 골격코드를 작성한다. (SDI 모드)

Dialog Box 제작 새로운 다이얼로그 박스를 제작. 윈도우프로그램예제 Dialog Box 제작 새로운 다이얼로그 박스를 제작. Insert 메뉴에서 Resource 항목을 선택하여 Insert Resource 다이얼로그 박스를 출력.

Dialog Box 제작 다이얼로그 에디터화면에서 오른쪽 버튼을 누르면 자주 사용하는 명령이 팝업 메뉴로 나타난다. 속성(Property)을 선택

Dialog Box 제작 팝업 메뉴에서 Properties 항목을 선택하면 Dialog Properties 박스가 나타남. Dialog Box ID : IDD_MY_DIALOG

Dialog Box 제작 컨트롤 툴 바에서 원하는 컨트롤을 가져와 다이얼로그 박스에 추가. 컨트롤 툴 바에서 원하는 컨트롤을 가져와 다이얼로그 박스에 추가. 컨트롤을 더블 클릭하여 Properties 박스에서 속성을 조정 push button ID : IDC_BUTTON1 Edit box ID : IDC_EDIT1

Dialog Box 제작 다이얼로그 박스의 클래스 생성. 클래스 위저드 실행하여 new class 항목 선택. Class name: CMyDlg 입력

Dialog Box 제작 다이얼로그 박스의 Edit Box 컨트롤에 데이터 멤버 변수를 정의. ClassWizard 를 실행한뒤 member variable 탭을 선택 Project : hello Class name : CMyDlg 에서 아래와 같이 설정. Control Ids : IDC_EDIT1 Member name : m_str Variable Type : Cstring

Dialog Box 제작 Push button에 대한 이벤트 처리 Push button은 버튼을 클릭할때 BN_CLICKED메시지가 발생함. ClassWizard 를 실행시켜 CMyDlg클래스에 Push Button의 버튼 메시지 BN_CLICKED 에 대한 메시지 핸들러 OnClickHere함수 설치.

Dialog Box 제작 OnClickHere 함수를 수정 Void CMyDlg :: OnClickHere() { 사용자가 “여기를 누르세요”라는 버튼을 클릭하면 이 함수가 실행되어 Edit box에 “Hello World”라는 문자열을 출력한다. ClassWizard 에서 Edit Code버튼을 클릭한다. Void CMyDlg :: OnClickHere() { Cstring str=“Hello , World”; SetDlgItemText(IDC_EDIT1,str); }

Dialog Box 제작 다이얼로그 박스를 호출할 메뉴 작성. Menu 리소스IDR_MAINFRAME을 열어 “나의메뉴”를 만들고 Hello(IDM_HELLO) 메뉴항목을 만든다.

Dialog Box 제작 ClassWizard를 실행시켜 메뉴항목에 대한 명령 핸들러를 만든다. Class Name : CHelloView Object ID : IDM_HELLO Message: COMMAND Member Function: OnHello

Dialog Box 제작 OnHello 함수를 수정한다. #include “MyDlg.h”//다이얼로그 박스//의 클래스 선언 void CHelloView :: OnHello() { //뷰에서 다이얼로그 박스를 사용하 //기 위한 변수 선언. CMyDlg dlg; dlg.m_str=“값이바뀝니다.” dlg.DoModal();//모달 다이얼로그 박 //스를 호출. //다이얼로그 박스에서 작업이 끝나면 뷰로 돌아온다. CClientDC dc(this); dc.TextOut(0,0,dlg.m_str); } OnHello 함수를 수정한다. 다이얼로그 박스를 화면에 띠우기 위해서는 다이얼로그 클래스로 객체를 만들고 DoModal함수로 다이얼로그 박스를 호출한다. ClassWizard에서 Edit code버튼을 클릭하면 코딩할수 있는 화면이 나타난다.

Dialog Box 제작 Build 메뉴에서 프로그램을 컴파일하고 실행한다. Build 메뉴에서 Build항목을 선택하여 hello.exe를 만듬. 에러가 없으면 Build메뉴에서 Execute hello.exe항목을 선택하여 프로그램 실행.