수안이의 컴퓨터 연구실

  • Mainpage
  • About Me
  • Tags
  • Metapage
  • Notice
  • Location
  • Keywords
  • Guestbook
  • Admin
  • Write an Article
  • Total | 1695000
  • Today | 745
  • Yesterday | 606

1 Articles, Search for 'Dialog Box'

  1. 2007/05/17 Dialog Box 생성자를 통해 데이터를 전달하는 방법
Programming/MFC2007/05/17 09:44

Dialog Box 생성자를 통해 데이터를 전달하는 방법

Nov 20 2002 10:28 Written by www.anygate.com


1. 무슨 얘기지?

대화상자는 사용자와 프로그램간의 상호 의사전달을 용이하게 하는 도구이다.
사용자의 명령을 처리하기 위해 적당한 정보를 알려주고 또 필요한 정보를 입력받는다.
이 과정에서 대화상자는 모든 정보를 스스로 생성하여 제시하지는 않는다.
대화상자 자체가 프로그램의 부수적인 기능일 뿐이므로
대부분의 정보는 메인 프로그램이 갖게된다.
따라서 대화상자를 호출하기 전에 대화상자에서 필요한 데이터를 전달해 주어야 한다.
(물론 그 데이터가 전역변수라면 상관이 없겠지만...)
여기서 하려는 얘기는 바로 그 전달 방법이다.


2. 가장 일반적인 방법

참고서적의 가장 흔한 주제가 대화상자이고 거기서 빈번하게 사용하는 코드는 다음과 같다.
많이 봤을테니 설명이 필요없겠죠?



3. 생성자를 통해 전달하는 방법

이렇게 하면 더 간단하지 않을까?



그러자면 클래스위저드가 생성해준 대화상자 클래스를 조금 수정해야 한다.

먼저 헤더파일의 클래스 선언중 생성자 원형을 다음과 같이 수정한다.
원래의 생성자는 지워도 되고 그대로 둔 채 새로운 생성자를 추가해도 된다.



다음에 cpp 파일의 정의부분을 수정한다.
마찬가지로 기존의 생성자는 지워도 되고 그대로 둔 채 새로운 생성자함수를 추개해도 된다.
그대로 둘 경우엔 어떤 생성자를 사용해서 대화상자를 호출할 것인가는 프로그래머 맘대로다.



위에서 MYDATA1, MYDATA2는 임의의 데이터형이다.
원래의 형태와 수정된 형태를 잘 비교해 보라.
생성자에 전달하는 인자의 데이터형과 갯수는 제한이 없다.
참, 생성자를 통해 전달된 인수는 생성자 함수 내에서만 유효하므로
생성자에서 대화상자의 적당한 멤버변수에 대입하여 저장해두어야 한다.
(엄청나게 당연한 거지만 왕초보를 위해 덧붙임.)
"MFC" 카테고리의 다른 글
  • 상태바위에 ProgressBar 올리기 #1 (0)2007/05/17
  • 다이얼로그상의 특정 컨트롤의 색상 변경 (0)2007/05/17
  • Dialog Box 생성자를 통해 데이터를 전달하는 방법 (0)2007/05/17
  • 틀이없는 타이틀 윈도우 만들기. (1)2007/05/17
  • CView 에 컨트롤 그리기. (0)2007/05/17
2007/05/17 09:44 2007/05/17 09:44
Posted by webdizen
Tags Dialog Box, 데이터 전달, 생성자
No Trackback No Comment

Trackback URL : http://www.webdizen.net/blog/trackback/2976

Leave your greetings.

[로그인][오픈아이디란?]

«Prev  1  Next»

RSS HanRSS
Blog Image
webdizen
이곳은 컴퓨터에 대해 연구하고, 공유하고, 소통하기 위한 연구실입니다. 개인적으로는 OLAP, Data Mining, Semantic Web, Data Modeling에 대해서 연구하고 있습니다.

Categories

전체 (3009)
Webdizen (141)
Life (6)
Diary (16)
Blog (9)
IDEA (2)
Travel (10)
Book (16)
Photo (7)
Movie (8)
Music (14)
Leisure Sports (10)
Funny (6)
Hardware (121)
Software (120)
Windows (5)
Unix & Linux (120)
Installation (5)
Kernel (10)
System (34)
Develop (22)
X-Window (0)
Applicaton (31)
Security (4)
Framework (2)
Hadoop (2)
Programming (804)
Algorithm & Data Structure (1)
Assembly (38)
UNIX/Linux C (95)
C++ (128)
STL (4)
Java (38)
Win32 API (92)
ATL/COM (44)
MFC (151)
.NET (26)
WCF/WPF (4)
C# (28)
Network Programming (17)
Database Programming (12)
OpenGL / DirectX (13)
Multimedia Programming (0)
Game Programming (21)
Parallel Distributed Progra... (0)
Reverse Engineering (0)
Debugging (9)
Python (1)
Ruby (1)
Ruby on Rails (1)
QT (4)
GTK (0)
JSP (0)
PHP (6)
ASP.NET (6)
ASP (2)
Development (28)
Useful Library (2)
Data Modeling (0)
Database (105)
Oracle (4)
MSSQL (41)
MySQL (2)
Data Warehouse (2)
Data Mining (4)
Network (66)
Web (79)
DHTML (4)
XHTML (1)
Javascript (1)
CSS (1)
AJAX (9)
XML (11)
Flex (1)
Silverlight (3)
Security (91)
DoS (1)
Kernel (10)
Scanning (3)
Sniffing (0)
Spoofing (4)
Overflow (28)
Web (11)
Shell (10)
Format String (14)
Window (2)
Embedded (70)
Multimedia (27)
Mobile (14)
Graphic (24)
Management (633)
Knowledge (581)
Hadoop (0)

Notice

  • 메타 블로그 사이트에 등록
  • 새해 맞이 블로그의 변화
  • 블로그 명칭 변경
  • 도메인(www.webdizen.net) 구...
  • TEXTCUBE 1.6.1로 업그레이드...

Tags

  • 멀티미디어
  • Microformats
  • English
  • Collection
  • 긍정
  • nmap
  • Distributed Queries
  • Unicode
  • 시스템 분석
  • 바탕화면
  • 홍보동영상
  • exception
  • 얼굴인식
  • Programming Optimization
  • 올블로그
  • Scan
  • 잠금
  • SQLXML
  • 쿼리 디자인
  • Ruby on Rails

Recent Articles

  • 트위터(Twitter)의 시작!.
  • 청년 리더의 조건.
  • 애플의 타블렛 PC - 아이패드....
  • 미래의 인터페이스 - 육감 기....
  • 기초발성법 동영상 강좌.

Recent Comments

  • 경청... 너무나 중요한데.......
    webdizen 14:59
  • 학교 과제물중 쓰레드에 대하....
    장진혁 03/17
  • 관리자만 볼 수 있는 댓글입....
    비밀방문자 03/12
  • 상대방의 이야기를 열심히 경....
    DoNuts 03/03
  • 좋은글 잘 보고 갑니다..
    Und_hacker 01/08

Recent Trackbacks

  • printf,scanf를 이용한 형식....
    yundream의 프로그래밍 이야기 03/10
  • 파일 열기/저장하기 CFileDialog.
    은마군의 나태블록 2009
  • World IT Show 2008.
    상우 :: Oranzie's BLOG 2008
  • cvs서버 설치하기.
    3인3색 2008
  • 속속 공개되는 Google Chart....
    PHP와 Web 2.0 2007

Archive

  • 2010/02 (1)
  • 2010/01 (6)
  • 2009/12 (5)
  • 2009/09 (3)
  • 2009/08 (1)

Calendar

«   2010/03   »
일 월 화 수 목 금 토
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

Bookmarks

    • Administration
      • IIS.NET
      • NTFAQ
      • OS의 모든 것
      • 리눅스포털
    • Database
      • SQL Server Central
      • SQL Team
    • Development
      • .NET Heaven
      • ASP Alliance
      • ASP.NET 2.0
      • Bullog.net
      • C# Corner
      • C++ (C PlusPlus.com)
      • C++ Reference
      • CodeGuru
      • CodePlex
      • DebugLab
      • Dev Articles
      • Devpia
      • DotNet Junkies
      • DotNet Zone
      • Driver Online
      • GOSU.NET
      • HOONS 닷넷
      • Joinc 팀블로그
      • KOSR
      • MSDN Home Page
      • OSR Online
      • Sky.ph - 개발자 커뮤니...
      • TAEYO.NET
      • The Code Project
      • WindowsClient.net
      • 김상욱의 개발자 Side
      • 조인시 위키
    • Human Networks
      • belief21c's e-space
      • I think I can
      • Invisible Rover's Blog :D
      • Polarux - Linuxing
      • Rodman®
      • 까만 나비
      • 나를 가꾸는 시간.
      • 단녕
      • 상우 :: Oranzie's BLOG
    • Information Technology
      • Microsoft TechNet
      • 지디넷코리아 - 글로벌...
    • Security
      • FoundStone
      • milw0rm
      • NewOrder
      • OpenRCE
      • Phrack.org
      • Reverse Engineering b1...
      • Reverse Engineering Team
      • RootKit
      • SecurityFocus
      • SecurityXploded by Nag...
      • Wow Hacker
      • Zone-H
Textcube
Louice Studio Inc.
Powered by Textcube. Original designed by Tistory.