Microsoft PowerPoint _대화상자.ppt

Size: px
Start display at page:

Download "Microsoft PowerPoint _대화상자.ppt"

Transcription

1 7 장. 대화상자 모달대화상자 (modal dialog box) DDX (Dialog Data Exchange) 모델리스대화상자 (modeless dialog box) 공통대화상자의사용 Paint3.dsw 순천향대학교정보기술공학부이상정 1 모달대화상자 (modal dialog box) 순천향대학교정보기술공학부이상정 2

2 대화상자의종류 모달대화상자 (modal dialog box) 대화상자를닫기전에다른윈도우로전환할수없으며 OK, CANCEL 버튼을눌러야다른윈도우로전환 Open 대화상자, 메시지대화상자 모델리스대화상자 (modeless dialog box) 대화상자를열어놓은채로다른작업을할수있는대화상자 워드프로그램의찾기대화상자 순천향대학교정보기술공학부이상정 3 Modal.dsw 예 (1) 모달형대화상자만들기 현재의화면해상도를조사해결과를대화상자를통해사용자에게보여주기 순천향대학교정보기술공학부이상정 4

3 Modal.dsw 예 (2) 1. SDI 옵션을사용하여 Modal.dsw 프로젝트생성 2. 리소스뷰의 Dialog을선택후오른쪽버튼을눌러팝업메뉴에서 Insert Dialog 항목을선택 IDD_DIALOG1이라는대화상자가만들어짐 툴바에서원하는컨트롤 ( 에디트박스 2개 ) 을선택후대화상자에배치 에디트박스선택하고오른쪽버튼의메뉴 properties에서 ID를 IDC_EDIT1, IDC_EDIT2로설정 순천향대학교정보기술공학부이상정 5 Modal.dsw 예 (3) 순천향대학교정보기술공학부이상정 6

4 Modal.dsw 예 (4) 3. 대화상자를만든후 View/ClassWizard 를선택하여대화상자클래스 Cinfo 클래스생성 => Info.h, Info.cpp 파일생성 순천향대학교정보기술공학부이상정 7 Modal.dsw 예 (5) 4. 클래스위저드를사용하여 WM_INITDIALOG 메시지핸들러코드작성 Info.cpp 파일에서대화상자가처음만들어질때수행되는 OnInitDialog() 함수 BOOL CInfo::OnInitDialog() CDialog::OnInitDialog(); int x,y; x=getsystemmetrics(sm_cxscreen); y=getsystemmetrics(sm_cyscreen); SetDlgItemInt(IDC_EDIT1,x); SetDlgItemInt(IDC_EDIT2,y); return TRUE; 순천향대학교정보기술공학부이상정 8

5 Modal.dsw 예 (6) GetSystemMetrics() 함수는시스템의현재구성상태를알려줌 SM_CXSCREEN : 화면의가로해상도 SM_CYSCREEN : 화면의세로해상도 SetDlgItemInt() 함수는대화상자의컨트롤에값을할당 void SetDlgItemInt(int nid, UNIT nvalue, BOOL bsigned=true); 첫번째인수 : 컨트롤의ID 두번째인수 : 대입할값 GetDlgItemInt() 는컨트롤의값을 read UNIT GetDlgItemInt(int nid, BOOL* lptrans=null, UNIT nvalue, BOOL bsigned=true); 순천향대학교정보기술공학부이상정 9 Modal.dsw 예 (7) 5. 프로그램에서대화상자호출 메뉴에 Modal 메뉴항목 (ID : ID_FILE_MODAL) 첨가 순천향대학교정보기술공학부이상정 10

6 Modal.dsw 예 (8) COMMAND 메시지핸들러 (CModalView::OnFileModal()) 코드생성 순천향대학교정보기술공학부이상정 11 Modal.dsw 예 (7) void CModalView::OnFileModal() CInfo dlg; dlg.domodal(); // 대화상자를화면에출력 6. CModalView.cpp에 CInfo 클래스정보삽입 #include "Info.h" 순천향대학교정보기술공학부이상정 12

7 대화상자디자인 컨트롤툴바 툴바보이기 오른쪽버튼을눌러팝업메뉴에서 Controls 체크박스를클릭 배치 컨트롤선택후드래그 속성조정 팝업메뉴에서 Properties 항목에서속성설정 탭순서변경 Layout/Tab Order 메뉴선택 대화상자에있는컨트롤을순서대로선택하면탭순서가변경 대화상자의빈곳을클릭하면탭순서지정마침 테스트 직접실행하지않고테스트만할수있는방법 LayOut/Test 메뉴선택 순천향대학교정보기술공학부이상정 13 DDX (Dialog Data Exchange) 순천향대학교정보기술공학부이상정 14

8 대화상자와의통신 메인프로그램과대화상자간의정보교환방법 대화상자를호출하는함수 (DoModal) 는인수가없기때문에정보를대화상자로전달할수없음 DoModal 이대화상자를실행후넘겨주는반환값도하나이므로대화상자의정보를메인프로그램에넘겨주기가어려움 화면의 (x,y) 위치에문자열을출력하되좌표값과문자열을대화상자로부터입력받는예제소개 대화상자와프로그램간의정보전달예 기초적인방식 : Ddx1.dsw DDX 방식 : Ddx2.dsw 순천향대학교정보기술공학부이상정 15 Ddx1.dsw 실행예 순천향대학교정보기술공학부이상정 16

9 Ddx1.dsw 예 (1) 1. Ddx1.dsw 를 SDI 옵션으로생성 2. 새로운대화상자디자인 3 개의에디트컨트롤에대한 ID IDC_NX, IDC_NY, IDC_MYSTR 순천향대학교정보기술공학부이상정 17 Ddx1.dsw 예 (2) 클래스위자드를실행시켜대화상자를사용하는클래스를생성 클래스이름 : CInput base class : CDialog Dialog ID : IDD_DIALOG1 클래스위자드가 Input.h, Input.cpp 파일을프로젝트에첨가 순천향대학교정보기술공학부이상정 18

10 Ddx1.dsw 예 (3) 3. Cinput 클래스코드수정 에디트컨트롤로입력한값을저장할변수를 Input.h 에선언 class CInput : public CDialog // Construction public: CInput(CWnd* pparent = NULL); // standard constructor int m_nx,m_ny; // 대화상자로부터입력된좌표값을저장 CString m_mystr; // 문지열을저장 순천향대학교정보기술공학부이상정 19 Ddx1.dsw 예 (4) 대화상자가열릴때변수값을대화상자의에디트컨트롤에복사 WM_INITDIALOG 메시지핸들러에서수행 BOOL CInput::OnInitDialog() CDialog::OnInitDialog(); SetDlgItemInt(IDC_NX,m_nx); SetDlgItemInt(IDC_NY,m_ny); SetDlgItemText(IDC_MYSTR,m_MyStr); return TRUE; 순천향대학교정보기술공학부이상정 20

11 Ddx1.dsw 예 (5) 대화상자가닫힐때컨트롤에입력된값을변수에대입 IDOK 버튼의 BN_CLICKED 메시지핸들러에서수행 void CInput::OnOK() m_nx=getdlgitemint(idc_nx); m_ny=getdlgitemint(idc_ny); GetDlgItemText(IDC_MYSTR,m_MyStr); CDialog::OnOK(); 순천향대학교정보기술공학부이상정 21 Ddx1.dsw 예 (6) 5. 뷰에서위치좌표에문자열을출력 OnDraw() 함수에서문자열을출력 void CDdx1View::OnDraw(CDC* pdc) CDdx1Doc* pdoc = GetDocument(); ASSERT_VALID(pDoc); pdc->textout(dlg.m_nx,dlg.m_ny, dlg.m_mystr, dlg.m_mystr.getlength()); dlg 객체를뷰에서사용하도록하기위해뷰클래스해더에서 CInput 클래스객체를선언 #include "input.h" class CDdx1View : public CView. // Attributes public: CDdx1Doc* GetDocument(); CInput dlg; 순천향대학교정보기술공학부이상정 22

12 Ddx1.dsw 예 (7) 대화상자를호출하는코드작성 파일 /Input 메뉴항목 (ID: ID_FILE_INPUT) 에서 COMMAND 메시지핸들러 void CDdx1View::OnFileInput() dlg.domodal(); Invalidate(); 뷰의생성자함수에서변수초기화 CDdx1View::CDdx1View() dlg.m_nx=0; dlg.m_ny=0; dlg.m_mystr="start String"; 순천향대학교정보기술공학부이상정 23 Ddx2.dsw 예 (1) MFC 는데이터교환의자동화방법 (DDX 메커니즘 ) 을제공 1. SDI 옵션으로 Ddx2.dsw 프로젝트생성 2. 대화상자디자인 3개의에디트컨트롤첨가 : IDC_NX IDC_NY IDC_MYSTR 클래스위자드를실행시켜대화상자를사용하는클래스를생성 클래스이름 : Cinput, base class: Cdialog, Dialog ID: IDD_DIALOG1 3. 클래스위저드를사용하여변수를첨가 변수첨가시값의범위를점검 DDV (Dialog Data Validation) 서비스 순천향대학교정보기술공학부이상정 24

13 Ddx2.dsw 예 (2) 순천향대학교정보기술공학부이상정 25 Ddx2.dsw 예 (3) 클래스위자드는대화상자클래스선언부에입력한변수를자동추가 class CInput : public CDialog // Construction public: CInput(CWnd* pparent = NULL); // standard constructor // Dialog Data //AFX_DATA(CInput) enum IDD = IDD_DIALOG1 ; CStringm_MyStr; int m_nx; int m_ny; //AFX_DATA 클래스위자드가대화상자의생성자에서변수를초기화시킨다. CInput::CInput(CWnd* pparent /*=NULL*/) : CDialog(CInput::IDD, pparent) //AFX_DATA_INIT(CInput) m_mystr = _T(""); m_nx = 0; m_ny = 0; //AFX_DATA_INIT 순천향대학교정보기술공학부이상정 26

14 Ddx2.dsw 예 (4) 클래스위저드가데이터교환 (DDX) 과타당성점검 (DDV) 을자동으로수행하는 DoDataExchange 함수를작성 void CInput::DoDataExchange(CDataExchange* pdx) CDialog::DoDataExchange(pDX); //AFX_DATA_MAP(CInput) DDX_Text(pDX, IDC_MYSTR, m_mystr); DDX_Text(pDX, IDC_NX, m_nx); DDV_MinMaxInt(pDX, m_nx, 0, 1000); DDX_Text(pDX, IDC_NY, m_ny); DDV_MinMaxInt(pDX, m_ny, 0, 1000); //AFX_DATA_MAP 순천향대학교정보기술공학부이상정 27 Ddx2.dsw 예 (5) 4. 뷰에서의작업은 Ddx1.dsw와동일 OnDraw() 함수에서문자열을출력 void CDdx1View::OnDraw(CDC* pdc) CDdx1Doc* pdoc = GetDocument(); ASSERT_VALID(pDoc); dlg 객체를뷰에서사용하도록하기위해뷰클래스해더에서 CInput 클래스객체를선언 #include "input.h" class CDdx1View : public CView. // Attributes public: CDdx1Doc* GetDocument(); CInput dlg; pdc-> TextOut(dlg.m_nx, dlg.m_ny, dlg.m_mystr, dlg.m_mystr.getlength()); 순천향대학교정보기술공학부이상정 28

15 Ddx2.dsw 예 (6) 대화상자를호출하는코드작성 파일 /Input 메뉴항목 (ID: ID_FILE_INPUT) 에서 COMMAND 메시지핸들러 void CDdx1View::OnFileInput() dlg.domodal(); Invalidate(); 뷰의생성자함수에서변수초기화 CDdx1View::CDdx1View() dlg.m_nx=0; dlg.m_ny=0; dlg.m_mystr="start String"; 순천향대학교정보기술공학부이상정 29 모델리스대화상자 (modeless dialog box) 순천향대학교정보기술공학부이상정 30

16 모델리스대화상자 모델리스대화상자는열어놓은채로사용하기때문에여러가지문제가발생 메뉴항목등의메시지핸들러함수내에서대화상자를만들고, 파괴하는모든일을할수없다. 따라서만드는과정과파괴하는과정을분리 DoModal() 함수대신에 Create() 함수를사용 OK 버튼을누르지않고도변경한값이즉시반영되도록해야함 순천향대학교정보기술공학부이상정 31 Ddx2a 예 (1) Ddx2 디렉토리를모두복사하여 Ddx2a 디렉토리를만들고다음과같이수정 1. 대화상자를만드는 File/Input 메뉴항목의핸들러를수정 void CDdx2View::OnFileInput() if (dlg.getsafehwnd()==null) dlg.create(idd_dialog1); dlg.showwindow(sw_show); DoModal() 함수대신에 Create() 함수사용하여대화상자를생성 GetSafeHwnd() 는해당대화상자가이미만들어져있는지를조사 ShowWindow(SW_SHOW) 는대화상자를화면에나타내어줌. 대화상자의속성윈도우의 More Styles 에서 visible 속성을설정하면위함수와동일한효과 순천향대학교정보기술공학부이상정 32

17 Ddx2a 예 (2) 2. 대화상자를열어놓고값을계속갱신하도록하기위해 Update 버튼추가 순천향대학교정보기술공학부이상정 33 Ddx2a 예 (3) Update 버튼의 BN_CLICKED 메시지핸들러에서값을갱신 void CInput::OnUpdate() UpdateData(TRUE); m_pview->invalidate(); UpdateData(TRUE) : 대화상자의컨트롤값을대응하는변수에복사 UpdateData(FALSE): TRUE의반대 Class Cinput Cstring m_mystr; int m_nx; Int m_ny; UpdateData(FALSE) UpdateData(TRUE) 순천향대학교정보기술공학부이상정 34

18 Ddx2a 예 (4) 3. 대화상자에서뷰를호출할수있도록설정 대화상자를호출한뷰를설정 대화상자클래스의해더파일에대화상자를호출한뷰의포인터를저정할변수를선언 class CInput : public CDialog // Construction public: CInput(CWnd* pparent = NULL); // standard constructor CView *m_pview; 뷰의생성자에서이변수에자신의뷰포인터를대입 CDdx2View::CDdx2View() dlg.m_nx=0; dlg.m_ny=0; dlg.m_mystr="start String"; dlg.m_pview=this; 순천향대학교정보기술공학부이상정 35 Ddx2a 예 (5) 4. 대화상자의 OK 버튼을누를때화면갱신 IDOK 의 BN_CLICKED 메시지핸들러 void CInput::OnOK() m_pview->invalidate() CDialog::OnOK(); 순천향대학교정보기술공학부이상정 36

19 Ddx2a 실행예 순천향대학교정보기술공학부이상정 37 공통대화상자의사용 순천향대학교정보기술공학부이상정 38

20 공통대화상자 Common Dialog는모든윈도우즈용프로그램에서공통으로사용하는대화상자 MFC에서는공통대화상자는 CCommonDialog 클래스로부터파생 대화상자파일열기대화상자폰트선택대화상자색상선택대화상자페이지셋업대화상자인쇄대화상자찾기, 바꾸기대화상자 클래스명 CFileDialog CFontDialog CColorDialog CPageSetupDialog CPrintDialog CFindReplaceDialog 순천향대학교정보기술공학부이상정 39 파일열기대화상자 (1) 파일열기대화상자는대화상자로부터파일이름을입력받는데사용 CFileDialog 클래스를사용 CFileDialog 클래스의생성자를사용하여대화상자객체를생성 CFileDialog( BOOL bopenfiledialog, LPCTSTR lpszdefext = NULL, LPCTSTR lpszfilename = NULL, DWORD dwflags = OFN_HIDEREADONLY OFN_OVERWRITEPROMPT, LPCTSTR lpszfilter = NULL, CWnd* pparentwnd = NULL ); bopenfiledialog: 이값이 TRUE이면대화상자는파일열기대화상자가되고, FALSE이면파일저장하기대화상자가된다. lpszdefext: 사용자가에디트박스에서직접파일이름을입력하고파일확장자를생략했을경우사용되는디폴트확장자이다. 확장자가생략된경우이인수가지정하는확장자가파일이름뒤에지동으로추가된다. 이값이 NULL 일경우확장자는추가되지않는다. 순천향대학교정보기술공학부이상정 40

21 파일열기대화상자 (2) lpszfilename: 파일이름에디트박스에나타날파일이름을지정하되이값이 NULL이면에디트박스에아무파일도지정되지않은채로대화상자가열린다. dwflags: 대화상자의여러가지옵션을설정한다. 이옵션은 CFileDialog 클래스의 m_ofn 멤버변수와동일하다. lpszfilter: 필터를지정하는문자열 pparentwnd: 파일열기대화상자의부모또는오너윈도우의핸들 순천향대학교정보기술공학부이상정 41 파일열기대화상자 (3) 예 CFileDialog dlg(true, _T("AVI"), _T("*.AVI"), OFN_HIDEREADONLY OFN_OVERWRITEPROMPT, _T("Animate(*.AVI) *.AVI")); TRUE는 open일경우, FALSE는 save일경우 _T("AVI") 는 default 파일확장자 _T("*.AVI") 는파일이름란에들어갈파일명 OFN_HIDEREADONLY OFN_OVERWRITEPROMPT는파일을열때설정해주는스타일플러그 OFN_HIDEREADONLY : read only check box를숨김 OFN_OVERWRITEPROMPT : 선택된파일이있다면 save as dialog box를생성 _T("Animate(*.AVI) *.AVI") 는파일형식란에기록할 data 형식, 확장자가AVI인파일만file list box에도시 순천향대학교정보기술공학부이상정 42

22 Commdlg.dsw 예 (1) 메뉴항목을사용하여공통대화상자를호출하고색상과폰트에대한정보를입력받아사용하는예 1. SDI 옵션을주어 Commdlg.dsw를생성 2. 대화상자를호출하는메뉴항목 Dialog 메뉴에 6 개의공통대화상자를위한메뉴항목설정 ID_DLG_FILE, ID_DLG_FONT, ID_DLG_COLOR, ID_DLG_PAGE, ID_DLG_PRINT, ID_DLG_FIND 순천향대학교정보기술공학부이상정 43 Commdlg.dsw 예 (2) 3. 색상과폰트를저장할변수를뷰의헤더에선언 class CCommdlgView : public CView protected: // create from serialization only CCommdlgView(); DECLARE_DYNCREATE(CCommdlgView) // Attributes public: CCommdlgDoc* GetDocument(); COLORREF m_brcolor;// 색상을저장할변수 LOGFONT m_font;// 폰트를저장할변수 순천향대학교정보기술공학부이상정 44

23 Commdlg.dsw 예 (3) 4. 각메뉴항목에대해 COMMAND 메시지핸들러작성 void CCommdlgView::OnDlgColor() CColorDialog dlg; dlg.domodal(); m_brcolor=dlg.getcolor(); Invalidate(); void CCommdlgView::OnDlgFile() int Result; CFileDialog dlg(true); Result=dlg.DoModal(); CString IMSI=dlg.GetFileName()+" 를선택하셨네요 "; if (Result==IDOK) MessageBox(IMSI); 순천향대학교정보기술공학부이상정 45 Commdlg.dsw 예 (4) void CCommdlgView::OnDlgFind() CFindReplaceDialog dlg; dlg.create(false,"dog"); // 첫번째인수 (TRUE: 표준 Find dialog, FALSE :Find/Replace dialog), // 두번째인수는 search string, 세번째인수는 replace 될 string MessageBox(" 대화상자떳지요. 좀있다사라집니다 "); void CCommdlgView::OnDlgFont() CFontDialog dlg(&m_font); dlg.domodal(); dlg.getcurrentfont(&m_font); Invalidate(); 순천향대학교정보기술공학부이상정 46

24 Commdlg.dsw 예 (5) void CCommdlgView::OnDlgPage() CPageSetupDialog dlg; dlg.domodal(); void CCommdlgView::OnDlgPrint() CPrintDialog dlg(false); dlg.domodal(); 순천향대학교정보기술공학부이상정 47 Commdlg.dsw 예 (6) 5. 공통대화상자에서선택한옵션을테스트하기위해 OnDraw 에코드작성 void CCommdlgView::OnDraw(CDC* pdc) CCommdlgDoc* pdoc = GetDocument(); ASSERT_VALID(pDoc); CString str(" 문자열이다 ABCD"); CBrush MyBrush, *poldbrush; CFont MyFont,*pOldFont; MyBrush.CreateSolidBrush(m_B rcolor); poldbrush= pdc->selectobject(&mybrush); pdc->ellipse(10,10,200,100); MyFont.CreateFontIndirect(&m_ Font); poldfont=pdc- >SelectObject(&MyFont); pdc- >TextOut(200,150,str,str.GetLen gth()); pdc->selectobject(poldfont); pdc- >SelectObject(pOldBrush); 순천향대학교정보기술공학부이상정 48

25 Commdlg.dsw 예 (7) 6. OnCreate(WM_CREATE 메시지 ) 에서폰트 ( 디폴트폰트 ), 색상 ( 검정 ) 을초기화 int CCommdlgView::OnCreate(LPCREATESTRUCT lpcreatestruct) if (CView::OnCreate(lpCreateStruct) == -1) return -1; CClientDC dc(this); CFont *TempFont=dc.GetCurrentFont(); TempFont->GetLogFont(&m_Font); m_brcolor=rgb(0,0,0); return 0; 순천향대학교정보기술공학부이상정 49 Commdlg.dsw 실행예 순천향대학교정보기술공학부이상정 50

26 Paint3.dsw 순천향대학교정보기술공학부이상정 51 Paint3.dsw 예 (1) Paint2.dsw 예제를변형 선의색상과굵기를대화상자를통해입력 선의색상을공통대화상자로입력 1. Paint3 디렉토리를만든다음 Paint2.dsw를복사 2. 선의속성을입력받는대화상자디자인 IDC_PenWidth, IDC_R, IDC_G, IDC_B 순천향대학교정보기술공학부이상정 52

27 Paint3.dsw 예 (2) 클래스위저드를사용하여대화상자의클래스를프로젝트에첨가 클래스이름 : CLineAttr DDX를위해각컨트롤에대응하는멤버변수추가 굵기유효범위 : 1-10 색상은유효범위가자동으로상한값이 255로설정 순천향대학교정보기술공학부이상정 53 Paint3.dsw 예 (3) 3. 클래스위저드에의해멤버변수가자동으로추가되고, 초기값도자동설정 class CLineAttr : public CDialog // Construction public: CLineAttr(CWnd* pparent = NULL); // standard constructor // Dialog Data //AFX_DATA(CLineAttr) enum IDD = IDD_DIALOG1 ; BYTE m_b; BYTE m_g; int m_penwidth; BYTE m_r; //AFX_DATA CLineAttr::CLineAttr(CWnd* pparent /*=NULL*/) : CDialog(CLineAttr::IDD, pparent) //AFX_DATA_INIT(CLineAttr) m_b = 0; m_g = 0; m_penwidth = 0; m_r = 0; //AFX_DATA_INIT 순천향대학교정보기술공학부이상정 54

28 Paint3.dsw 예 (4) 4. 뷰에서대화상자를호출하도록 Paint 메뉴의끝에 Line Attr 메뉴항목추가 순천향대학교정보기술공학부이상정 55 Paint3.dsw 예 (5) 5. 대화상자객체 (dlg) 를뷰의멤버변수로선언 #include "LineAttr.h" enum tagtool DRAW,LINE,ELLIPSE,RECTANGLE; class CPaint2View : public CView // Attributes public: CPaint2Doc* GetDocument(); CPoint m_nowp;// 마우스가처음눌려진좌표기억 CPoint m_oldp;// 선, 원, 사각형을그릴시중간과정의좌표를기억 tagtool m_tool;// 그리기종류를기억 BOOL m_bpaint;// 그림을그리는중인지를기억 CLineAttr dlg; 순천향대학교정보기술공학부이상정 56

29 Paint3.dsw 예 (6) 6. Line Attr 메뉴항목의 COMMAND 메시지핸들러에서대화상자를호출 void CPaint2View::OnPaintLineattr() dlg.domodal(); 7. 대화상자를통해선택된색상과펜굵기를그리기코드에적용 마우스버튼을놓을때 void CPaint2View::OnLButtonUp(UINT nflags, CPoint point) m_bpaint=false; CBrush *OldBrush; CPen *OldPen, MyPen; CClientDC dc(this); OldBrush=(CBrush *) dc.selectstockobject(null_brush); 순천향대학교정보기술공학부이상정 57 MyPen.CreatePen(0,dlg.m_PenWidth,R GB(dlg.m_R,dlg.m_G,dlg.m_B)); OldPen=dc.SelectObject(&MyPen); switch (m_tool) case LINE: dc.moveto(m_nowp); dc.lineto(point); break; case ELLIPSE: dc.ellipse(m_nowp.x,m_nowp.y,point.x,point.y); break; case RECTANGLE: dc.rectangle(m_nowp.x,m_nowp.y,poi nt.x,point.y); break; dc.selectobject(oldbrush); dc.selectobject(oldpen); Paint3.dsw 예 (7) 마우스버튼을움직일때 void CPaint2View::OnMouseMove(UINT nflags, CPoint point) CBrush *OldBrush; CPen *OldPen, MyPen; CClientDC dc(this); OldBrush=(CBrush *)dc.selectstockobject(null_brush); MyPen.CreatePen(0,dlg.m_PenWidth,RG B(dlg.m_R,dlg.m_G,dlg.m_B)); OldPen=dc.SelectObject(&MyPen); if (!m_bpaint) return; switch (m_tool) case DRAW: dc.moveto(m_nowp); dc.lineto(point); m_nowp=point; break; 순천향대학교정보기술공학부이상정 58 case LINE: dc.setrop2(r2_not);// 한번그린후다시그리면원래의그림을복구 dc.moveto(m_nowp); dc.lineto(m_oldp); dc.moveto(m_nowp); dc.lineto(point); m_oldp=point; break; case RECTANGLE: dc.setrop2(r2_not); dc.rectangle(m_nowp.x,m_nowp.y,m_ol dp.x,m_oldp.y); dc.rectangle(m_nowp.x,m_nowp.y,point.x,point.y); m_oldp=point; break; dc.selectobject(oldbrush); dc.selectobject(oldpen);

30 Paint3.dsw 예 (8) 8. 색상을색상선택공통대화상자를사용 - 대화상자에색상선택공통대화상자를호출하는버튼을추가 순천향대학교정보기술공학부이상정 59 Paint3.dsw 예 (9) CLineAttr 클래스에서 IDC_BUTTON 의 BN_CLICKED 메시지핸들러를작성 void CLineAttr::OnButton1() CColorDialog COL; COLORREF SelColor; if (COL.DoModal()==IDOK) SelColor=COL.GetColor(); m_r=getrvalue(selcolor); m_g=getgvalue(selcolor); m_b=getbvalue(selcolor); UpdateData(FALSE); 순천향대학교정보기술공학부이상정 60

31 Paint3.dsw 예 (10) 9. 커서모양바꾸기 Resource View 의팝업메뉴에서 insert -> cursor 를선택하여새로운커서를설계 순천향대학교정보기술공학부이상정 61 Paint3.dsw 예 (11) 10. 커서모양을마우스왼쪽버튼을 down IDC_CURSOR1 으로바꾸고, up 시 IDC_ARROW 로바꾸기 OnLButtonDown() 에다음코드삽입 HCURSOR MyCursor = AfxGetApp()->LoadCursor(IDC_CURSOR1); SetClassLong(m_hWnd, GCL_HCURSOR, (long)mycursor); OnLButtonUp() 에다음코드삽입 HCURSOR MyCursor = AfxGetApp()->LoadStandardCursor(IDC_ARROW); SetClassLong(m_hWnd, GCL_HCURSOR, (long)mycursor); 순천향대학교정보기술공학부이상정 62

32 Paint3.dsw 실행예 순천향대학교정보기술공학부이상정 63 과제 7 장에서학습한대화상자를응용한프로그램작성 순천향대학교정보기술공학부이상정 64

<4D F736F F F696E74202D203039C0E520B4EBC8ADBBF3C0DA205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D203039C0E520B4EBC8ADBBF3C0DA205BC8A3C8AF20B8F0B5E55D> 09: 대화상자 학습목표 대화상자편집기의사용법을익힌다. 모드형대화상자와비모드형대화상자의차이점을이해하고작성방법을익힌다. 대화상자기반응용프로그램의원리를이해하고작성방법을익힌다. 공통대화상자를다루는방법을배운다. 개요 (1/2) 대화상자 다양한컨트롤을포함하고있는일종의윈도우 사용자로부터입력을받거나정보를출력 1 개요 (2/2) 대화상자종류 모드형대화상자 대화상자를닫지않으면응용프로그램이더이상진행할수없다.

More information

Microsoft PowerPoint - hci2-lecture9.ppt

Microsoft PowerPoint - hci2-lecture9.ppt Overview 대화상자 대화상자, 대화상자템플렛, 대화상자편집기 모드형대화상자와비모드형대화상자의차이 대화상자기반응용프로그램 HCI Programming 2 (321190) 2007 년가을학기 11/19/2007 박경신 2 대화상자 대화상자 (Dialog Box) 다양한컨트롤을포함하고있는일종의윈도우 사용자로부터입력을받거나정보를출력 정적, 버튼, 편집등다양한컨트롤들을배치하고관리하는윈도우

More information

그래픽 프로그래밍

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

More information

윈도우시스템프로그래밍

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

More information

윈도우시스템프로그래밍

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

More information

윈도우 프로그래밍의 개념

윈도우 프로그래밍의 개념 제 8 장컨트롤과리소스 II 8.1 탭컨트롤 8.2 슬라이더컨트롤실습 8-1 도형의종류와색상출력하기 8.3 스핀컨트롤 8.4 프로그레스바컨트롤 8.5 IP 주소컨트롤 8.6 네트워크주소컨트롤 8.7 날짜 / 시간컨트롤 8.8 애니메이트컨트롤실습 8.2 데이터전송시뮬레이터작성하기 컨트롤및리소스 리스트컨트롤 (List Control) 트리컨트롤 (Tree Control)

More information

[제1강] 텍스트를 입력하세요

[제1강] 텍스트를  입력하세요 제 10 강 폼뷰 (1) Visual C++ 프로그래밍 컴퓨터과학과 김강현교수 제 10 강의학습내용 FormView 프로젝트생성리소스편집 / 컨트롤추가멤버변수추가멤버함수추가파일열기와저장파일열기대화상자 학습내용 1 부 FormView 프로젝트생성 Static Text, Edit Control,Spin Control,Button 멤버변수 (Control 형 /Value

More information

윈도우 프로그래밍의 개념

윈도우 프로그래밍의 개념 제 10 장다양한뷰클래스 10.1 도큐먼트 10.2 파일입출력 10.3 다양한뷰클래스 실습 10-1 Formview를이용한문자를출력하고파일입출력 10.4 분할윈도우 실습 10-2 정적분할윈도우를이용한학생정보프로그램 10.5 다중뷰 실습 10-3 다중뷰만들기 CDocument 클래스 데이터를관리하는클래스 OnNewDocument() 함수 새로운도큐먼트를만드는기능

More information

쉽게 풀어쓴 C 프로그래밍

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

More information

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

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

More information

<4D F736F F F696E74202D20C1A C0E520B5B5C5A5B8D5C6AE20C6C4C0CF20C0D4C3E2B7C220B9D720B4D9BEE7C7D120BAE420C5ACB7A1BDBA2E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A C0E520B5B5C5A5B8D5C6AE20C6C4C0CF20C0D4C3E2B7C220B9D720B4D9BEE7C7D120BAE420C5ACB7A1BDBA2E BC8A3C8AF20B8F0B5E55D> 제 10 장다양한뷰클래스 10.1 도큐먼트 10.2 파일입출력 10.3 다양한뷰클래스 실습 10-1 Formview를이용한문자를출력하고파일입출력 10.4 분할윈도우 실습 10-2 정적분할윈도우를이용한학생정보프로그램 10.5 다중뷰 실습 10-3 다중뷰만들기 도큐먼트 CDocument 클래스 데이터를관리하는클래스 OnNewDocument() 함수 새로운도큐먼트를만드는기능

More information

Microsoft PowerPoint _파일입출력.ppt

Microsoft PowerPoint _파일입출력.ppt 8 장. 파일입출력 파일입출력연속화 (serialization) 아카이브 (archive) 객체 Paint4.dsw Paint5.dsw 레지스트리 (registry) 오목게임 순천향대학교정보기술공학부이상정 1 파일입출력 순천향대학교정보기술공학부이상정 2 파일입출력소개 파일입출력 프로그램에서만든정보를하드디스크의파일로저장하는방법 MFC 에서사용하는파일입출력방법인연속화

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

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

Microsoft PowerPoint - C++ 5 .pptx

Microsoft PowerPoint - C++ 5 .pptx C++ 언어프로그래밍 한밭대학교전자. 제어공학과이승호교수 연산자중복 (operator overloading) 이란? 2 1. 연산자중복이란? 1) 기존에미리정의되어있는연산자 (+, -, /, * 등 ) 들을프로그래머의의도에맞도록새롭게정의하여사용할수있도록지원하는기능 2) 연산자를특정한기능을수행하도록재정의하여사용하면여러가지이점을가질수있음 3) 하나의기능이프로그래머의의도에따라바뀌어동작하는다형성

More information

Microsoft PowerPoint - CPP_chap3

Microsoft PowerPoint - CPP_chap3 3 장. 마우스와키보드메시지 1 1. 능동적입력받기와수동적입력받기 2 학습목표 이벤트위주로직개념을파악한다 메시지개념을파악한다 능동적입력받기 절차적로직프로그램에서입력받기 언제무엇을입력받을지는프로그램의절차적로직에서결정 예 : 텍스트모드 C 프로그램에서문자열을입력받는경우 수동적입력받기 이벤트위주로직프로그램에서입력받기 윈도우환경에서마우스나키보드입력은 Windows

More information

Programming hwp

Programming hwp 6 장 MDI 응용프로그램 MDI 응용프로그램의형태 응용프로그램마법사 (AppWizard) 가생성하는 MDI 응용프로그램의주실행창을나타내는객체는 CFrameWnd에서파생된클래스인스턴스이며, 기본외형은아래그림과같이메뉴와툴바를포함한다. 문서내용을보여주는뷰들은이창의클라이언트영역안에자식창으로만들어지는윈도우들을통해표시된다. 주실행창의클라이언트영역안에는여러개의자식창이만들어질수있으며,

More information

5장 MFC기반 다지기

5장 MFC기반 다지기 5 장 MFC 기반다지기 김성영교수 금오공과대학교 컴퓨터공학부 들어가기 (1) pp.132 ~ 138 비주얼스튜디오에서 MFC 어플리케이션작성 참조 시스템메뉴 메뉴 최소 / 최대 / 닫기버튼 툴바 대화상자 클라이언트영역 (Client Area) 스크롤바 상태표시줄 2 들어가기 (2) 3 들어가기 (3) 4 들어가기 (4) 솔루션탐색기확인 WinMain() 함수가없다?

More information

1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y; public : CPoint(int a

1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y; public : CPoint(int a 6 장복사생성자 객체의생성과대입객체의값에의한전달복사생성자디폴트복사생성자복사생성자의재정의객체의값에의한반환임시객체 C++ 프로그래밍입문 1. 객체의생성과대입 int 형변수 : 선언과동시에초기화하는방법 (C++) int a = 3; int a(3); // 기본타입역시클래스와같이처리가능 객체의생성 ( 복습 ) class CPoint private : int x, y;

More information

DLL(Dynamic Linked Library)

DLL(Dynamic Linked Library) 제 11 장동적연결라이브러리 11.1 DLL 의링크 11.2 DLL 의종류 실습 11-1 Implicit 링킹을통한정규 DLL 달력만들기 실습 11-2 Explicit 링킹을통한정규 DLL 달력만들기 실습 11-3 확장 DLL 을통한주민등록번호조회 프로그램만들기 DLL(Dynamic Linked Library) DLL 이란? 동적연결라이브러리 프로그램내부에라이브러리가있는것이아니라따로독립적으로실행가능한파일

More information

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

(Microsoft PowerPoint - 07\300\345.ppt [\310\243\310\257 \270\360\265\345]) 클래스의응용 클래스를자유자재로사용하자. 이장에서다룰내용 1 객체의치환 2 함수와클래스의상관관계 01_ 객체의치환 객체도변수와마찬가지로치환이가능하다. 기본예제 [7-1] 객체도일반변수와마찬가지로대입이가능하다. 기본예제 [7-2] 객체의치환시에는조심해야할점이있다. 복사생성자의필요성에대하여알아보자. [ 기본예제 7-1] 클래스의치환 01 #include

More information

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 ) 8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 ) - DDL(Data Definition Language) : show, create, drop

More information

<B9CCB5F0BEEE20C1A4BAB8C3B3B8AE2E687770>

<B9CCB5F0BEEE20C1A4BAB8C3B3B8AE2E687770> 제목 : 미디어정보처리프로그래밍실습모음 일시 : 2002. 6. 15 작성자 : 성용철학번 : 한남대학교정보통신멀티미디어공학부 ( 전자정보통신전공 ) 미디어정보처리프로그래밍실습숙제설명 1.256 X 256 grayscale 의디스플레이프로그램 Resource View 의 menu item 에서 Display 밑에 Raw gray 라마든다음에그림과같이 ID 와

More information

Microsoft PowerPoint - CPP_chap6_interface(2)

Microsoft PowerPoint - CPP_chap6_interface(2) 사용자인터페이스 (2) 1 1. 대화상자 (Dialog) 2 학습목표 Graphs 예제에서여러가지굵기의선을그릴수있도록수정해본다 선의굵기를지정할대화상자를만들고대화상자클래스를만든다 대화상자구현과정 1 리소스에디터를사용하여대화상자리소스 (Resource) 를만든다. 대화상자리소스는대화상자의형태를정의한다. 2 ClassWizard를사용하여 CDialog 클래스를상속받아새대화상자클래스를만든다.

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

Microsoft Word - hci08-final-answer.doc

Microsoft Word - hci08-final-answer.doc 기말고사 담당교수 : 단국대학교멀티미디어공학전공박경신 답은반드시답안지에기술할것. 공간이부족할경우반드시답안지몇쪽의뒤에있다고명기한후기술할것. 그외의경우의답안지뒤쪽이나연습지에기술한내용은답안으로인정안함. 답에는반드시네모를쳐서확실히표시할것. 답안지에학과, 학번, 이름외에본인의암호를기입하면성적공고시학번대신암호를사용할것임. 1. 다음문장의내용이맞으면 True, 틀리면 False를표시하시오.

More information

Microsoft Word - hci07-final-answer.doc

Microsoft Word - hci07-final-answer.doc 기말고사 담당교수 : 단국대학교멀티미디어공학전공박경신 답은반드시답안지에기술할것. 공간이부족할경우반드시답안지몇쪽의뒤에있다고명기한후기술할것. 그외의경우의답안지뒤쪽이나연습지에기술한내용은답안으로인정안함. 답에는반드시네모를쳐서확실히표시할것. 답안지에학과, 학번, 이름외에본인의암호를기입하면성적공고시학번대신암호를사용할것임. 1. 다음문장의내용이맞으면 True, 틀리면 False를표시하시오.

More information

Chapter 1. MFC 시작하기

Chapter 1.  MFC 시작하기 Chapter 1. MFC 시작하기 1. MFC(Microsoft Foundation Class) 개요 2. Visual Studio 2015 프로그램설치하기 3. 마우스클릭프로그램작성 4. 그림그리기프로그램작성 5. 마우스좌표값구하기프로그램작성 1 1.1. MFC 개요 2 1.1.1. C++ 언어 객체지향언어 (Object-Oriented Programming,

More information

Visual C++의 개요

Visual C++의 개요 2.1 MFC 의개요 2.2 MFC 프로그램의구조 2.3 Visual C++ 의시작실습 2-1 Application Wizard 익히기 2.4 SDI 템플릿 2.5 MDI 템플릿 2.6 MFC 애플리케이션아키텍처실습 2-2 간단한 MFC 프로젝트만들기 MFC 의개요 MFC 윈도우애플리케이션을생성하기위해만들어진 C++ 클래스라이브러리 애플리케이션프레임워크를제공

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

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

10 장세균전프로그래밍 10.1 게임룰 (1) 사람과컴퓨터가싸우는 2인용보드게임이다. (2) 사람이먼저움직이고, 컴퓨터가움직인다. (3) 세균을가로및세로방향으로 2칸까지빈칸으로이동시킬수있다. (4) 1칸을이동할경우에는복제가된다. (5) 이동한후주변세균은내편으로바뀐다.

10 장세균전프로그래밍 10.1 게임룰 (1) 사람과컴퓨터가싸우는 2인용보드게임이다. (2) 사람이먼저움직이고, 컴퓨터가움직인다. (3) 세균을가로및세로방향으로 2칸까지빈칸으로이동시킬수있다. (4) 1칸을이동할경우에는복제가된다. (5) 이동한후주변세균은내편으로바뀐다. 10 장세균전프로그래밍 10.1 게임룰 (1) 사람과컴퓨터가싸우는 2인용보드게임이다. (2) 사람이먼저움직이고, 컴퓨터가움직인다. (3) 세균을가로및세로방향으로 2칸까지빈칸으로이동시킬수있다. (4) 1칸을이동할경우에는복제가된다. (5) 이동한후주변세균은내편으로바뀐다. (6) 둘다이동할수없으면, 경기가종료된다. (7) 가장많은세균을가진사람이이긴다. 10.2 기초지식

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,

More information

Microsoft PowerPoint - CSharp-10-예외처리

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

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

오버라이딩 (Overriding)

오버라이딩 (Overriding) WindowEvent WindowEvent 윈도우가열리거나 (opened) 닫힐때 (closed) 활성화되거나 (activated) 비활성화될때 (deactivated) 최소화되거나 (iconified) 복귀될때 (deiconified) 윈도우닫힘버튼을누를때 (closing) WindowEvent 수신자 abstract class WindowListener

More information

Programming hwp

Programming hwp 4.2 메뉴및컨트롤들의추가 이절에서다룰예제프로그램은덧셈 / 곱셈문제를제시하고답을검사해주는프로그램이다. 이프로그램을실행하면두개의한자리숫자들이무작위로생성되어 "Number 1" 과 "Number 2" 옆의에디트컨트롤에나타난다. Exec 메뉴안에는 Renew라는메뉴항목이있으며, 이메뉴항목을선택할때마다숫자들은무작위로변경된다. Exec 메뉴안의 Change Level

More information

슬라이드 1

슬라이드 1 13장직렬화 김성영교수 금오공과대학교 컴퓨터공학부 도큐먼트 / 뷰구조 (1) 도큐먼트와뷰 디스크에저장된파일데이터를읽는경우 도큐먼트객체 뷰객체 파일 사용자 읽기 화면표시 2 도큐먼트 / 뷰구조 (2) 도큐먼트와뷰 사용자가데이터를입력하는경우 도큐먼트객체 뷰객체 파일 사용자 저장 입력 3 도큐먼트 / 뷰구조 (3) 도큐먼트와뷰 입력된데이터를디스크파일에저장하는경우

More information

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

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

More information

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont

12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont 12 강. 문자출력 Direct3D 에서는문자를출력하기위해서 LPD3DXFONT 객체를사용한다. 12.1 LPD3DXFONT 객체생성과초기화 LPD3DXFONT 객체를생성하고초기화하는함수로 D3DXCreateFont() 가있다. HRESULT D3DXCreateFont( in LPDIRECT3DDEVICE9 pdevice, in INT Height, in UINT

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

Lab 3. 실습문제 (Single linked list)_해답.hwp

Lab 3. 실습문제 (Single linked list)_해답.hwp Lab 3. Singly-linked list 의구현 실험실습일시 : 2009. 3. 30. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 5. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Singly-linked list의각함수를구현한다.

More information

4 장클래스와객체 클래스와객체 public과 private 구조체와클래스객체의생성과생성자객체의소멸과소멸자생성자와소멸자의호출순서디폴트생성자와디폴트소멸자멤버초기화멤버함수의외부정의멤버함수의인라인함수선언 C++ 프로그래밍입문

4 장클래스와객체 클래스와객체 public과 private 구조체와클래스객체의생성과생성자객체의소멸과소멸자생성자와소멸자의호출순서디폴트생성자와디폴트소멸자멤버초기화멤버함수의외부정의멤버함수의인라인함수선언 C++ 프로그래밍입문 4 장클래스와객체 클래스와객체 public과 private 구조체와클래스객체의생성과생성자객체의소멸과소멸자생성자와소멸자의호출순서디폴트생성자와디폴트소멸자멤버초기화멤버함수의외부정의멤버함수의인라인함수선언 C++ 프로그래밍입문 1. 클래스와객체 추상데이터형 : 속성 (attribute) + 메서드 (method) 예 : 자동차의속성과메서드 C++ : 주로 class

More information

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher( 실행할페이지.jsp); 다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp"); dispatcher.forward(request, response); - 위의예에서와같이 RequestDispatcher

More information

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

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

More information

untitled

untitled MFC MFC MFC AppWizard 來 MFC MFC 類 了 類 Document/View MFC Visual C++ AppWizard MFC 不 力 亮 來 不 Document View 不 列 AppWizard View 類 CEditView 列 列 說 行 不 了 Document/View MFC Application Framework 靈 OLE Document

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

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

Microsoft PowerPoint - chap06-1Array.ppt

Microsoft PowerPoint - chap06-1Array.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-1 참고자료 배열 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 배열의선언과사용 같은형태의자료형이많이필요할때배열을사용하면효과적이다. 배열의선언 배열의사용 배열과반복문 배열의초기화 유연성있게배열다루기 한빛미디어

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

Comtrol ID 레이블 Hotkey Callback 함수 ⑴ Button, IDC_BTN_DEPT, &Department, OnBtnDepartment ⑵ Button, IDC_BTN_EMP, &Employee, OnBtnEmployee ⑶ Button, IDC_B

Comtrol ID 레이블 Hotkey Callback 함수 ⑴ Button, IDC_BTN_DEPT, &Department, OnBtnDepartment ⑵ Button, IDC_BTN_EMP, &Employee, OnBtnEmployee ⑶ Button, IDC_B adb.open(dsn) ;; DB 연결 (CompanyAccDB) adb.open(null, false, false, strdsn) ;; DB 연결 (DSN=CompanyAccDB) adb.executesql(strsql) ;; 결과가없는연산자 (Ins/Del/Upd) adb.close() ;; DB 연결끊음 CRecordset aqryset(&adb) ;;

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 03 장 영상처리를위한 Visual C++ 디지털영상파일포맷 MFC AppWizard[exe] 를이용한 MFC 프로젝트작성 MFC 를이용한영상처리입. 출력프로그램작성 MFC 를이용한영상축소 MFC 를이용한영상확대 MFC 를이용한양자화영상처리 한빛미디어 ( 주 ) 학습목표 3 장. 영상처리를위한 Visual C++ 영상처리에사용되는 RAW 파일포맷을이해한다.

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 9 강. 클래스의활용목차 멤버함수의외부정의 this 포인터 friend 선언 static 멤버 임시객체 1 /17 9 강. 클래스의활용멤버함수의외부정의 멤버함수정의구현방법 내부정의 : 클래스선언내에함수정의구현 외부정의 클래스선언 : 함수프로토타입 멤버함수정의 : 클래스선언외부에구현

More information

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

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

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

Programming hwp

Programming hwp 4 장대화상자기반응용프로그램 3장에서는윈도우응용프로그램작성을위한 MFC 프로그래밍에텍스트편집기만을사용하였으나, 이장에서부터는응용프로그램마법사 (AppWizard), 리소스편집기, 클래스마법사 (Class Wizard) 등의도구를활용한다. 이러한도구들의이용으로전체프로그램소스에서프로그래머가직접코딩하는분량을크게줄일수있어빠른시간안에응용프로그램의개발이가능해진다. 또한

More information

歯Lecture2.PDF

歯Lecture2.PDF VISUAL C++/MFC Lecture 2? Update Visual C ++/MFC Graphic Library OpenGL? Frame OpenGL 3D Graphic library coding CLecture1View? OpenGL MFC coding Visual C++ Project Settings Link Tap Opengl32lib, Glu32lib,

More information

Lab 4. 실습문제 (Circular singly linked list)_해답.hwp

Lab 4. 실습문제 (Circular singly linked list)_해답.hwp Lab 4. Circular singly-linked list 의구현 실험실습일시 : 2009. 4. 6. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 12. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Circular Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Circular

More information

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D> 리눅스 오류처리하기 2007. 11. 28 안효창 라이브러리함수의오류번호얻기 errno 변수기능오류번호를저장한다. 기본형 extern int errno; 헤더파일 라이브러리함수호출에실패했을때함수예 정수값을반환하는함수 -1 반환 open 함수 포인터를반환하는함수 NULL 반환 fopen 함수 2 유닉스 / 리눅스 라이브러리함수의오류번호얻기 19-1

More information

삼성955_965_09

삼성955_965_09 판매원-삼성전자주식회사 본 사 : 경기도 수원시 영통구 매탄 3동 416번지 제조원 : (주)아이젠 삼성 디지털 비데 순간온수 세정기 사용설명서 본 제품은 국내(대한민국)용 입니다. 전원, 전압이 다른 해외에서는 품질을 보증하지 않습니다. (FOR KOREA UNIT STANDARD ONLY) 이 사용설명서에는 제품보증서가 포함되어 있습니다. 분실되지 않도록

More information

PowerPoint Template

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

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

윈도우 프로그래밍의 개념

윈도우 프로그래밍의 개념 제 7 장컨트롤과리소스 I 7.1 리스트컨트롤실습 7-1 대화상자에리스트컨트롤만들기 7.2 트리컨트롤실습 7-2 대화상자에트리컨트롤만들기 컨트롤및리소스 리스트컨트롤 (List Control) 트리컨트롤 (Tree Control) 탭컨트롤 (Tab Control) 슬라이드컨트롤 (Slider Control) 스핀컨트롤 (Spin Control) 프로그레스바컨트롤

More information

슬라이드 1

슬라이드 1 전자정부개발프레임워크 1 일차실습 LAB 개발환경 - 1 - 실습목차 LAB 1-1 프로젝트생성실습 LAB 1-2 Code Generation 실습 LAB 1-3 DBIO 실습 ( 별첨 ) LAB 1-4 공통컴포넌트생성및조립도구실습 LAB 1-5 템플릿프로젝트생성실습 - 2 - LAB 1-1 프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new

More information

PowerPoint Template

PowerPoint Template 16-1. 보조자료템플릿 (Template) 함수템플릿 클래스템플릿 Jong Hyuk Park 함수템플릿 Jong Hyuk Park 함수템플릿소개 함수템플릿 한번의함수정의로서로다른자료형에대해적용하는함수 예 int abs(int n) return n < 0? -n : n; double abs(double n) 함수 return n < 0? -n : n; //

More information

슬라이드 1

슬라이드 1 정적메모리할당 (Static memory allocation) 일반적으로프로그램의실행에필요한메모리 ( 변수, 배열, 객체등 ) 는컴파일과정에서결정되고, 실행파일이메모리에로드될때할당되며, 종료후에반환됨 동적메모리할당 (Dynamic memory allocation) 프로그램의실행중에필요한메모리를할당받아사용하고, 사용이끝나면반환함 - 메모리를프로그램이직접관리해야함

More information

Microsoft PowerPoint - hci2-lecture5-messagemap.ppt

Microsoft PowerPoint - hci2-lecture5-messagemap.ppt Windows 와 C++ MFC Message Map HCI Programming 2 (321190) 2008년가을학기 10/14/2008 박경신 C++ 의다형성 (Polymorphsim) 기반클래스의어떤멤버함수를파생클래스에서재정의 (overriding) 하기위해서는기반클래스의그멤버함수가가상함수 (virtual function) 로정의되어야함 MFC 의 CWnd

More information

Microsoft PowerPoint - additional01.ppt [호환 모드]

Microsoft PowerPoint - additional01.ppt [호환 모드] 1.C 기반의 C++ part 1 함수 오버로딩 (overloading) 디폴트매개변수 (default parameter) 인-라인함수 (in-line function) 이름공간 (namespace) Jong Hyuk Park 함수 Jong Hyuk Park 함수오버로딩 (overloading) 함수오버로딩 (function overloading) C++ 언어에서는같은이름을가진여러개의함수를정의가능

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

Programming hwp

Programming hwp 5 장 SDI 응용프로그램 5.1 문서 / 뷰구조와 SDI 응용프로그램 문서 / 뷰구조 SDI 응용프로그램유형또는 MDI 응용프로그램유형이선택될경우응용프로그램마법사 (AppWizard) 가생성하는프로그램구조는문서 / 뷰 (Document/View) 구조를중심으로이루어진다. 이러한응용프로그램들은문서의전체또는일부를메모리에읽어들인후그내용을어떤형태로든사용자에게보여준다.

More information

윈도우즈 프로그래밍

윈도우즈 프로그래밍 8 장대화상자 VS 2015 008. 윈도우프로그래밍 DB & Mining LAB. Korea University Updated 2010. 10. 23 Updated 2012. 10. 02 Updated 2015. 09. 23 이종욱 eastwest9@korea.ac.kr 1 8-1 대화상자 (1/3) 사용자로부터끊임없이지시를받고사용자의지시에따라작업을하고 작업한결과를사용자에게보고한다.

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

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

More information

chap 5: Trees

chap 5: Trees 5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경

More information

게임 기획서 표준양식 연구보고서

게임 기획서 표준양식 연구보고서 ᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞ ᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞ ᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞ ᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞ ᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞ ᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞ ᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞᆞ

More information

슬라이드 1

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

More information

Microsoft PowerPoint - Chap12-OOP.ppt

Microsoft PowerPoint - Chap12-OOP.ppt 객체지향프로그래밍 (Object Oriented Programming) 12 장강사 강대기 차례 (Agenda) 멤버에대한동적메모리할당 암시적 / 명시적복사생성자 암시적 / 명시적오버로딩대입연산자 생성자에 new 사용하기 static 클래스멤버 객체에위치지정 new 사용하기 객체를지시하는포인터 StringBad 클래스 멤버에포인터사용 str static 멤버

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 3 장함수와문자열 1. 함수의기본적인개념을이해한다. 2. 인수와매개변수의개념을이해한다. 3. 함수의인수전달방법 2가지를이해한다 4. 중복함수를이해한다. 5. 디폴트매개변수를이해한다. 6. 문자열의구성을이해한다. 7. string 클래스의사용법을익힌다. 이번장에서만들어볼프로그램 함수란? 함수선언 함수호출 예제 #include using

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

슬라이드 1

슬라이드 1 - 1 - 전자정부모바일표준프레임워크실습 LAB 개발환경 실습목차 LAB 1-1 모바일프로젝트생성실습 LAB 1-2 모바일사이트템플릿프로젝트생성실습 LAB 1-3 모바일공통컴포넌트생성및조립도구실습 - 2 - LAB 1-1 모바일프로젝트생성실습 (1/2) Step 1-1-01. 구현도구에서 egovframe>start>new Mobile Project 메뉴를선택한다.

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

윈도우 프로그래밍의 개념

윈도우 프로그래밍의 개념 제 9 장고급컨트롤과리본 9.1 MFC Feature 컨트롤실습 9-1 간단한명함제작프로그램만들기 9.2 리본실습 9.2 리본메뉴및각종리본컨트롤사용하기 MFC Feature 컨트롤 MFC 버튼컨트롤 MFC Button 은기본적으로 CButton 과같은속성을갖고있음. 사용목적에따라 Radio, Check, Command 버튼으로스타일을변경할수있다. CButton

More information

<4D F736F F F696E74202D203031C0E520C0A9B5B5BFEC20C7C1B7CEB1D7B7A1B9D620B1E2C3CA5FBFB5B3B2C0CCB0F8B4EB205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D203031C0E520C0A9B5B5BFEC20C7C1B7CEB1D7B7A1B9D620B1E2C3CA5FBFB5B3B2C0CCB0F8B4EB205BC8A3C8AF20B8F0B5E55D> 01 : 윈도우프로그래밍기초 학습목표 윈도우운영체제와윈도우응용프로그램의특징을이해한다. SDK 응용프로그램작성과정, 기본구조, 동작원리를이해한다. MFC 응용프로그램작성과정, 기본구조, 동작원리를이해한다. 비주얼 C++ 개발환경사용법을익힌다. 윈도우운영체제특징 (1/3) 그래픽사용자인터페이스 1 윈도우운영체제특징 (2/3) 메시지구동구조 이벤트발생... 대기

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

4S 1차년도 평가 발표자료

4S 1차년도 평가 발표자료 객체지향프로그래밍응용 Chap 2. 프로그램의뼈대 2012.09.17. 오병우 컴퓨터공학과금오공과대학교 윈도우프로그램각부분의명칭 타이틀바 메뉴 프레임윈도우오브젝트 메뉴오브젝트 도구모음 툴바오브젝트 스크롤바 클라이언트영역 뷰오브젝트 상태표시줄 상태바오브젝트 Department of Computer Engineering 2 Win32 Application API

More information

Microsoft PowerPoint - hci2-lecture7.ppt

Microsoft PowerPoint - hci2-lecture7.ppt Overview 파일입출력 CFile 클래스를이용한파일입출력기법 도큐먼트 / 뷰구조이해 CArchive 클래스를이용한직렬화기법 HCI Programming 2 (321190) 2007 년가을학기 11/5/2007 박경신 2 파일입출력방법 일반파일입출력 CFile ( 파생 ) 클래스 Read(), Write() 등의함수이용 직렬화 (serialization)

More information

1. 상속의기본개념 다음과같은문제를위한클래스설계 자동차 속성 : 색상, 배기량, 현재속도 메서드 : 가속하라, 멈춰라, 시동을켜라 트럭 속성 : 색상, 배기량, 현재속도, 최대중량 메서드 : 가속하라, 멈춰라, 시동을켜라 택시 속성 : 색상, 배기량, 현재속도, 요금,

1. 상속의기본개념 다음과같은문제를위한클래스설계 자동차 속성 : 색상, 배기량, 현재속도 메서드 : 가속하라, 멈춰라, 시동을켜라 트럭 속성 : 색상, 배기량, 현재속도, 최대중량 메서드 : 가속하라, 멈춰라, 시동을켜라 택시 속성 : 색상, 배기량, 현재속도, 요금, 8 장상속 상속의기본개념상속관련문제제기 base 클래스의접근제어와 protected 멤버상속관계에서의생성자와소멸자함수재정의 (function overriding) 디폴트액세스지정자와구조체 derived 클래스로부터의상속다중상속 virtual base 클래스 derived 클래스의디폴트복사생성자와디폴트대입연산자 private 생성자의사용 C++ 프로그래밍입문

More information

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

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

More information

ISP and CodeVisionAVR C Compiler.hwp

ISP and CodeVisionAVR C Compiler.hwp USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler

More information

Microsoft PowerPoint - CPP_chap7_dialogbox(2)

Microsoft PowerPoint - CPP_chap7_dialogbox(2) 7 장. 대화상자컨트롤 (2) 1 1. 버튼컨트롤 2 학습목표버튼컨트롤들을포함한다이얼로그박스를만들어본다 소스 : "07-1 Ctrl1.zip" 다이얼로그박스만들기 1 Ctrl1 라는이름의 Dialog based 프로젝트를생성한다 2 IDD_CTRL1_DIALOG 다이얼로그박스리소스수정 3 3 컨트롤아이디지정컨트롤 ID 컨트롤유형 캡션 IDC_STATIC Static

More information

Microsoft PowerPoint - 09-CE-14-리스트콤보박스

Microsoft PowerPoint - 09-CE-14-리스트콤보박스 순천향대학교컴퓨터학부이상정 1 학습내용 리스트박스컨트롤 다이얼로그와리스트박스 콤보박스컨트롤 순천향대학교컴퓨터학부이상정 2 리스트박스컨트롤 순천향대학교컴퓨터학부이상정 3 리스트박스컨트롤 사용자가선택할수있는항목들을여러개나열해두고선택할수있는컨트롤 윈도우클래스의이름은 "listbox" 생성예 hlist=createwindow(l"listbox",null,ws_child

More information

구조체정의 자료형 (data types) 기본자료형 (primitive data types) : char, int, float 등과같이 C 언어에서제공하는자료형. 사용자정의자료형 (user-defined data types) : 다양한자료형을묶어서목적에따라새로운자료형을

구조체정의 자료형 (data types) 기본자료형 (primitive data types) : char, int, float 등과같이 C 언어에서제공하는자료형. 사용자정의자료형 (user-defined data types) : 다양한자료형을묶어서목적에따라새로운자료형을 (structures) 구조체정의 구조체선언및초기화 구조체배열 구조체포인터 구조체배열과포인터 구조체와함수 중첩된구조체 구조체동적할당 공용체 (union) 1 구조체정의 자료형 (data types) 기본자료형 (primitive data types) : char, int, float 등과같이 C 언어에서제공하는자료형. 사용자정의자료형 (user-defined

More information

<4D F736F F F696E74202D203036C0E520BBE7BFEBC0DA20C0CEC5CDC6E4C0CCBDBA205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D203036C0E520BBE7BFEBC0DA20C0CEC5CDC6E4C0CCBDBA205BC8A3C8AF20B8F0B5E55D> 06: 사용자인터페이스 학습목표 메뉴명령을처리하고메뉴항목을적절하게갱신하는기법을익 힌다. 컨텍스트메뉴와시스템메뉴를다루는방법을익힌다. 툴바를생성하고사용하는방법을익힌다. 상태바를생성하고사용하는방법을익힌다. 메뉴용어 (1/6) 최상위메뉴 = 메뉴바 최상위메뉴 = 메뉴바 1 메뉴용어 (2/6) 메뉴항목 용어 의미 1 명령항목명령 (Command) 을수행하는메뉴항목.

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

1. 클래스와배열 int 형배열선언및초기화 int ary[5] = 1, 2, 3, 4, 5 ; for (int i = 0; i < 5; i++) cout << "ary[" << i << "] = " << ary[i] << endl; 5 장클래스의활용 1

1. 클래스와배열 int 형배열선언및초기화 int ary[5] = 1, 2, 3, 4, 5 ; for (int i = 0; i < 5; i++) cout << ary[ << i << ] =  << ary[i] << endl; 5 장클래스의활용 1 5 장클래스의활용 클래스와배열객체포인터 this 포인터멤버함수오버로딩디폴트매개변수의사용 friend ( 전역함수, 클래스, 멤버함수 ) 내포클래스지역클래스 static 멤버 const 멤버와 const 객체 explicit 생성자 C++ 프로그래밍입문 1. 클래스와배열 int 형배열선언및초기화 int ary[5] = 1, 2, 3, 4, 5 ; for (int

More information

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

Slide 1

Slide 1 SeoulTech 2011-2 nd 프로그래밍입문 (2) Chapter 14. 상속 박종혁교수 (http://www.parkjonghyuk.net) Tel: 970-6702 Email: jhpark1@snut.ac.kr Learning Objectives 상속의기본 파생클래스와생성자 protected: 제한자 멤버함수의재정의 상속되지않는함수들 상속을이용한프로그래밍

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

슬라이드 1

슬라이드 1 CCS v4 사용자안내서 CCSv4 사용자용예제따라하기안내 0. CCS v4.x 사용자 - 준비사항 예제에사용된 CCS 버전은 V4..3 버전이며, CCS 버전에따라메뉴화면이조금다를수있습니다. 예제실습전준비하기 처음시작하기예제모음집 CD 를 PC 의 CD-ROM 드라이브에삽입합니다. 아래안내에따라, 예제소스와헤더파일들을 PC 에설치합니다. CD 드라이브 \SW\TIDCS\TIDCS_DSP80x.exe

More information

강의 개요

강의 개요 DDL TABLE 을만들자 웹데이터베이스 TABLE 자료가저장되는공간 문자자료의경우 DB 생성시지정한 Character Set 대로저장 Table 생성시 Table 의구조를결정짓는열속성지정 열 (Clumn, Attribute) 은이름과자료형을갖는다. 자료형 : http://dev.mysql.cm/dc/refman/5.1/en/data-types.html TABLE

More information