[C++ 언어-기초실습-24] GetSystemMetrics()함수로 윈도우 정보 얻기
- 다운 사이트 : https://sourceforge.net/projects/orwelldevcpp/
- 웹컴파일러 : https://www.tutorialspoint.com/compile_c_online.php
- Win32 API Reference 출처 :
http://soen.kr/lecture/win32api/reference/reference.htm
윈도우 정보를 콘솔창에서 얻는 방법을 실습해보도록 하겠습니다.
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;
}
[결과]
마무리
이 함수 외에서 Win32 래퍼런스에 가시면 다양한 함수들이 있습니다. 한번 각 함수들을 읽어보시기 바랍니다. 이 함수들을 잘 활용하시면 다양한 재밌는 프로그램을 많이 만들 수 있을 거에요. 직접 win정보를 얻고 컨트롤 할 수 있기 때문에 꽤 재밌는 공부가 되실 거라 생각 됩니다.