[MFC] 폰트 사이즈 설정 방법


폰트 사이즈 설정하는 방법을 소개 할까 합니다.

간단하게 말로 설명합니다. 모르겠다 싶으면 댓글 달아주세요.

우선 전역변수를 설정해 줍니다.

CFont m_font;


그리고 OnInitDialog() 를 선택하고 다음 코드를 작성합니다.

여기서 또 두가지 방법이 있습니다. 두가지 방법 모두 설명해 드립니다.

 CDialog::OnInitDialog();
   
   m_font.CreateFont( 100, // nHeight
                               80, // nWidth
                               0, // nEscapement
                               0, // nOrientation
                               1, // nWeight
                               0, // bItalic
                               0, // bUnderline 
                               0, // cStrikeOut 
                               0, // nCharSet
                               OUT_DEFAULT_PRECIS, // nOutPrecision 
                               0,                              // nClipPrecision 
                               DEFAULT_QUALITY,       // nQuality
                               DEFAULT_PITCH | FF_DONTCARE,  // nPitchAndFamily 
                               "굴림" ); // lpszFacename



이렇게 작성해주고.

원하는 폼(에디트 박스, 버튼 등..) 을 설정해줍니다.

m_edit1.SetFont(&m_font, TRUE);

일케

또는 GetDlgItem(IDC_EDIT1)->SetFont(&m_font);

일케 ㅇㅋ?


그리고 저 위에 보면 폰트사이즈 설정하는 코드가 무지막지하게 길다 싶으면

다른 방법이 있습죠.


바로 요거


m_font.CreatePointFont(180,"굴림");

그리고 설정은 위와 똑같이

m_edit1.SetFont(&m_font, TRUE);

이거나

GetDlgItem(IDC_EDIT1)->SetFont(&m_font);

일케 해주면 됩니다!^^

쉽죠?

어렵다면 답변 달아주세요;





내가 아는건 이 세상 사람이 다 알수 있도록!

공부합시다 아자아자!!

[MFC] EDIT BOX를 이용한 사용 예입니다.

간단한 EDIT BOX 사용 예 를 보여드리겠습니다.

여기서 다룰 것은 EDIT BOX 2개를 생성 후 한 쪽의 EDIT BOX 의 글을 다른 EDIT BOX 로 복사하는 것 입니다.

사용자 삽입 이미지


우선 폼에 에디트 박스 두개와 버튼을 하나 만듭니다.
그리고 메뉴에서 View -> ClassWizard (CTRL +W) 를 눌러 EDIT BOX에 각 변수를 지정합니다.(용어 선택에 있어 실수가있을수있습니다. 왜냐면 제가 처음 시작하는 관계로 굉장히 무지합니다. 이점 양해해주시고. 많은 지적 부탁드립니다)


사용자 삽입 이미지

EDIT BOX의 컨트롤 아이디는 아래 와 같습니다.

IDC_EDIT1 로 시작합니다.

이부분을 두번 클릭합니다.


그럼 아래와 같은 창이 뜹니다.


사용자 삽입 이미지

맴버변수 이름은 m_edit1 이런식으로 m_변수이름 으로 지정을 합니다.
그리고 value 로 설정하고 변수타입은 CString 으로 지정합니다.

에디트 박스 두개 모두 타입을 설정합니다.


여기서 EDIT BOX 두개 변수명을
IDC_EDIT1  ->  m_edit1
IDC_EDIT3  ->  m_edit2 로 지정했습니다.

설정이 마무리 됬습니다. 버튼 이벤트를 클릭합니다.

void CEDlg::OnButton1()
{

 // 요안에 넣어욤!~

}


저 안에 코드를 넣습니다.

여기서 두가지 방법이 있습니다.

첫번째입니다.

 CString str;                                  // CString 타입의 str를  설정 합니다. 

 GetDlgItem(IDC_EDIT1)->GetWindowText(str); // EDIT1 값을 갖어와서 str 로 넘깁니다.
 GetDlgItem(IDC_EDIT3)->SetWindowText(str); // str 를 EDIT3 로 다시 출력해요.



두번째 방법입니다.

 UpdateData();     // UpdateData();  UpdateData(FALSE); 은 따로 설명할께요 
 m_edit2 = m_edit1;    // m_edit2 즉 IDC_EDIT3 박스에 m_edit1 IDC_EDIT1 값을 적용한다.
 UpdateData(FALSE);




이 두가지가 있습니다.

함 실행 화면 볼까요?

사용자 삽입 이미지


뭐 두가지 모두 작동하는 건 똑같습니다. 두가지 방법이 어떤 차이가 있는지는 제가 좀더 공부해보고 알려드리겠습니다;

지적 바로바로 해주세요.

전 욕먹는걸 두려워 하지않습니다. 그저 무관심이 두려울뿐입니다;


열심히 합시다!!


아 예제 프로그램은 나중에 따로 올릴께요. 죄송;

[MFC] Visual C++ 6.0 을 이용한 다이얼로그 창 띄우기 예제


학교 세미나 때문에 MFC를 처음 시작하게됬다. 책도없고 그저 인터넷 뒤져서 하나하나 알아가고 있다. 책을 사야 할지도 아직도 고민중이다.

우선 인터넷 도움을 좀 받다가 정 안되겠다 싶으면 책 하나 골라야겠다.

지금 부터 내가 머리빠지면서 알아낸 정보를 풀어볼까 한다.

뭐 이정도는 누군가에겐 정말 코웃음 치면서 볼 가장 기본적인 것일지도 모르겠지만 누군가에겐 사막의 오아시스가 될수도 있다고 생각하기에 자신은 없지만 하나 둘 올려볼까 한다.

왜냐..내가 조내 개 고생했거든--;;

이번 건 MFC를 시작하는 이들에게 가장 기본적인 부분이지만 또한 가장 힘든부분이다.
너무 헷갈렸거든;; 책이 있었으면 따라하다보면 알게되겠지만..

아무튼 시작한다.

우선 비주얼 C++ 6.0을 실행 시킨다.(여기선 비주얼 C++ 6.0 기준으로 설명하겠다)

그리고 메뉴 에서 File -> New 를 선택한다.(단축키 Ctrl + N)

사용자 삽입 이미지

우선 Project 탭을 선택후 목록중 MFC AppWizard(exe) 선택 오른쪽 Project Name은
본인의 프로젝트 명을 넣으면 된다. 그리고 OK!



사용자 삽입 이미지


다이얼로그 창 띄우기 예제다 보니 다른건 재끼고 우선 심플하게 테스트하기위해 다이얼로그 선택합니다.  그리고 Next!!


여기서 간단 설명

Single document 
단일 문서를 작업할 수 있는 어플리케이션을 생성한다. 이를 SDI(Single Document Interface)어플리케이션이라고 한다. 예를 들어 메모장(Notepad.exe)이 여기에 해당된다. 

Multiple document 
다중 문서를 작업할 수 있는 어플리케이션을 생성한다. 이를 MDI(Multiple Document Interface)어플리케이션이라고 한다. 예를 들어 시스템 편집기(Svsedit.exe)이 여기에 해당된다. 

Dialog based 
다이얼로그 기반의 어플리케이션을 생성한다. 예를 들어 윈도우 기본 오락인 지뢰찾기가 여기에 해당된다. 

리소스에 사용할 언어 
콤보 박스에서 사용할 리소스 언어를 선택한다. 자신의 시스템에 설치되어 있는 DLL에 따라서 지원하는 언어 항목이 다르게 나타난다. 



사용자 삽입 이미지

추가적인 기능들은 재끼고 그냥 Next. 나중에 필요하면 추가한다.




사용자 삽입 이미지


여기도 그냥 Next
또 나머지 부분은 차차 배워서 써먹자 지금 필요한건 창 띄우기다.



사용자 삽입 이미지

여기까지 왔으면 Finish !



사용자 삽입 이미지

OK 누른다.


사용자 삽입 이미지


두둥 왼쪽 탭에 Resource View를 선택하면 다이얼로그 폼이 보인다.

여따 막 집어 넣으면 된다.

우선 지금 보이는 창은 메인창이다. 부모 창이라고 한다.

자식 창 그러니깐 버튼 클릭시 뜨는 창을 하나 더 만들어 보자.

왼쪽 트리에서 Dialog 에 오른쪽 버튼을 눌러 Insert Dialog 를 선택한다.


사용자 삽입 이미지


요렇게 만들어진다.



사용자 삽입 이미지

뭐 구분하기 위해 글을 한번 적어 봅시다.

옆에 컨트롤 박스에서 Static Text 선택해서 글한번 끄적인다.

아 Static Text 을 갖다 놔도 글을 쓸수가 없다? 그래 그럼 아래 봅세.


사용자 삽입 이미지

오른쪽 버튼을 누르면 아래 Properties 가 있다. 고거 누른다.



사용자 삽입 이미지

그럼 이런게 뜬다. Caption 에 글을 적어본다. 그리고 그럼 수정 싸사삭!



사용자 삽입 이미지


아! 새로 생성한 다이얼로그는 그냥 못 쓴다. 클래스 등록을 한다.
메뉴 View -> ClassWizard (Ctrl + W) 를 눌러서 클래스로 등록한다.



사용자 삽입 이미지

클래스를 생성하고 OK



사용자 삽입 이미지

이름을 설정한다 CChildDlg 라고 적었다. 그냥 test 해도된다. 필요한 이름을 적어둔다.
대신 기억한다.

참고로

CChildDlg 라 지정하면 앞에 C가 사라지고 ChildDlg.cpp, ChildDlg.h 로 저장이된다.
(test 라 지정해도 test.cpp, test.h 라 저장되는데 C의 차이는 아직 모르겠다;; 나중에 해보니 둘다 작동은 된다.)

ChildDlg.h 는 기억해주다.



사용자 삽입 이미지

다 설정했으면 OK!



사용자 삽입 이미지
자식 창  설정 다 했으면 부모 창에서 버튼을 하나 생성합니다.
 
그리고 버튼을 누르면 편집 창으로 넘어갑니다.




사용자 삽입 이미지


아래 코드를 추가합니다.

void CTestDlg::OnButton1() {

CChildDlg dlg;   // CChildDlg 아까 지정한 요부분
dlg.DoModal();  // DoModal() 를 이용하여 창을 띄웁니다.

 
}



사용자 삽입 이미지

마지막으로 중요한부분. 이부분은 내가 잘못 알고있는 부분일지도 모른다.

여기저기 찾았는데 정보가 없더라.. 그래서 혼자 삽질하다 결국엔 알아냈는데.

괜히 힘들게 고생한거 같다. 다른 방법이 있다면 알려주길 바랍니다.

결론..

아까 작성한 CChildDlg 가
ChildDlg.h 로 저장이 된다. 요걸 인클루드 한다.

#include "ChildDlg.h"

일케 한다.

고럼 짜잔!!~~




사용자 삽입 이미지


요래 된다.


어떤가.... 쉽지않나??


모든게  처음이 중요하다 생각한다.

지금 하는일이 비록 어렵고 힘이든다 한들 이 처음만 참고 이겨낸다면 당신은 플머계의 에리뜨!~



이제 시작이다!!


아자아자!!!!! 화이팅!!!



자료는 공유되어야한다!~ 쭈욱!~
퍼가실때 출처 밝혀주세요.
http://starfactory.tistory.com



'공부해봅시다 > MFC/API' 카테고리의 다른 글

[MFC] 폰트 사이즈 설정 방법  (1) 2008.07.11
[MFC] EDIT BOX 사용 예제 입니다.  (7) 2008.07.11

+ Recent posts