천간 avatar

[C++ 언어-기초실습-24] GetSystemMetrics()함수로 윈도우 정보 얻기

codingman

Published: 11 Aug 2019 › Updated: 11 Aug 2019[C++ 언어-기초실습-24] GetSystemMetrics()함수로 윈도우 정보 얻기

[C++ 언어-기초실습-24] GetSystemMetrics()함수로 윈도우 정보 얻기

[C++ 언어-기초실습-24] GetSystemMetrics()함수로 윈도우 정보 얻기



윈도우 정보를 콘솔창에서 얻는 방법을 실습해보도록 하겠습니다.

1. GetSystemMetrics()함수


출처 : http://soen.kr/lecture/win32api/reference/Function/GetSystemMetrics.htm


구글검색을 통해 보기 편하게 정리 해놓은 곳이 있어서 링크를 걸어 놓습니다. GetSystemMetrics()함수를 이용하여 다양한 윈도우 정보를 얻을 수 있습니다. 이 함수 안에 여러개의 인자들이 있는데 여기서 다 나열하지나 너무 길어서 래퍼런스를 제가 찾은 곳에서 보시던지 따로 전문 레퍼런스를 찾으셔서 보시든지 하셔서 어떤 인자들이 있는지 한번 알아 보시기 바랍니다. 대부분 스크린 관련 정보를 얻을 수 있는데 실습도 간단히 스크린 정보와 몇가지 시스템 정보를 얻는 실습을 해보는록 하겠습니다.

우선 기본적으로 이 함수를 사용하기 위해서는 아래와 같은 형식을 취해주시면 됩니다.

#include 

int main(){
    int  = GetSystemMetrics(); //예) 가로해상도 GetSystemMetrics(SM_CXSCREEN);
}

이렇게 정보를 읽어 올 수 있습니다. 여러분들이 실습을 할 때에는 래퍼런스를 읽어 보시고 원하는 값을 읽어 와서 콘솔창에서 출력 해보시면 되겠죠.

2. 코딩


[전체소스]

#include 
#include 

using namespace std;

int main(int argc, char** argv) {
    
    int cx_Screen = GetSystemMetrics(SM_CXSCREEN);
    int cy_Screen = GetSystemMetrics(SM_CYSCREEN);
    int cy_Menu = GetSystemMetrics(SM_CYMENU);
    int pen_Windows = GetSystemMetrics(SM_PENWINDOWS);
    int mouse_Present = GetSystemMetrics(SM_MOUSEPRESENT);
    
    cout<<"가로 해상도 : "<<cx_Screen<<endl;
    cout<<"세로 해상도 : "<<cy_Screen<<endl;
    cout<<"메뉴바 높이 : "<<cy_Menu<<endl;
    cout<<"팬 컴퓨터 연결 상태 : "<<pen_Windows<<endl;
    cout<<"마우스 연결 상태 : "<<mouse_Present<<endl;
    
    return 0;
}

[결과]
a1.jpg

마무리


이 함수 외에서 Win32 래퍼런스에 가시면 다양한 함수들이 있습니다. 한번 각 함수들을 읽어보시기 바랍니다. 이 함수들을 잘 활용하시면 다양한 재밌는 프로그램을 많이 만들 수 있을 거에요. 직접 win정보를 얻고 컨트롤 할 수 있기 때문에 꽤 재밌는 공부가 되실 거라 생각 됩니다.


Sponsored ( Powered by dclick )

dclick-imagead

Leave [C++ 언어-기초실습-24] GetSystemMetrics()함수로 윈도우 정보 얻기 to:

Written by

나는 소망한다 내게 주어진 모든것들을

Read more #kr-dev posts


Best Posts From 천간

We have not curated any of codingman's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.

More Posts From 천간