QtWinExtras > QT 강좌/팁

본문 바로가기
사이트 내 전체검색

QT 강좌/팁

QT/Embedded QtWinExtras

페이지 정보

작성자 no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글 0건 조회 10,390회 작성일 14-11-11 15:51

본문

이글은 제가 podovat.com의 blog 올린글(http://www.podovat.com/?p=304)에서 퍼온것입니다.

MS 윈도우 기반에서 프로그래밍을 할 경우 HDC, HBITMAP, HICON, HRGN등과 같은것을 이용해서 이를 Qt에 통합하여 처리해야 하는 경우가 있습니다.
이때 사용될 수 있는것이 QtWinExtras입니다. QtWinExtras는 MS윈도우 환경에서 사용가능한것을 묶어서 Qt로 변환하는 여러가지 함수들을 제공합니다.

다음의 예는 윈도우 화면의 스크린샷을 찍어서 QImage로 변환하고 이를 파일로 저장하는 예제 입니다.
이를 통해서 HBITMAP을 어떻게 QImage로 변환해서 Qt로 통합하는지를 알 수 있는 가장 쉬운 설명이 될 것 같습니다.

[code=c]
HDC hdc = GetDC(NULL); // get the desktop device context
HDC hDest = CreateCompatibleDC(hdc); // create a device context to use yourself

int height = GetSystemMetrics(SM_CXSCREEN);
int width = GetSystemMetrics(SM_CYSCREEN);

HBITMAP hbDesktop = CreateCompatibleBitmap( hdc, width, height);

SelectObject(hDest, hbDesktop);

BitBlt(hDest, 0,0, width, height, hdc, 0, 0, SRCCOPY);
QImage img = QtWin::imageFromHBITMAP(hdc, hbDesktop, width, height);

ReleaseDC(NULL, hdc);

DeleteDC(hDest);

img.save("c:/screenshot.png");
[/code]

위의 코드에서 12번 라인에 있는 QtWin::imageFromHBITMAP 함수는 HBITMAP으로 부터 width, height만큼의 크기의 QImage객체를 얻어낼 수 있는 함수를 볼 수 있으며, 이 함수를 통해 반환된 QImage객체를 18번라인 save()함수로 저장을 하면 손쉽게 QImage를 이용해 처리할 수 있음을 알 수 있습니다.

QWinExtras에 대한 자세한 내용은 공식 문서 URL http://qt-project.org/doc/qt-5/qtwin.html 에서 확인 할 수 있습니다.

사용시 소스코드내에서 다음과 같이 include를 추가하고
[code=c]
#include
[/code]

프로젝트파일(.pro)에서 다음과 같이 추가를 해주면 됩니다.
[code]
QT += winextras
[/code]

추천0

댓글목록

등록된 댓글이 없습니다.

Total -1,396건 1 페이지
QT 강좌/팁 목록
번호 제목 글쓴이 조회 추천 날짜
-1396 Qtopia no_profile 경환쏭 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 7 0 10-26
-1397 Qtopia no_profile 경환쏭 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 82 0 10-22
-1398 Qtopia no_profile 경환쏭 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 82 0 10-22
-1399 Qtopia no_profile 경환쏭 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 85 0 10-20
-1400 QT/Win32 no_profile 이지수입니다 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4160 0 02-14
-1401 QT/Win32 no_profile 주영대감 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 4949 0 05-31
-1402 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10959 0 09-10
-1403 QT/X11 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10862 0 12-03
-1404 QT/X11 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12067 1 03-07
-1405 QT/Embedded no_profile 요원009 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 16852 0 11-13
-1406 QT/Win32 no_profile tmdwn 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10579 0 05-18
-1407 QT/Embedded no_profile 잉농 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10668 0 05-14
-1408 QT/Embedded no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11125 0 04-01
-1409 QT/Embedded no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 30666 1 03-31
-1410 QT/Win32 no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 21428 0 03-17
-1411 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 9588 0 02-13
-1412 QT/Win32 no_profile 인라이너 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10027 1 02-12
-1413 QT/Embedded no_profile 김아무개 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 22844 0 11-12
-1414 QT/Embedded no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10300 0 11-11
열람중 QT/Embedded no_profile korone 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10391 0 11-11
-1416 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 16808 0 10-22
-1417 QT/Win32
Qt와 C++11 댓글+ 2
no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 16876 1 10-12
-1418 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 18872 0 10-09
-1419 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12120 0 10-02
-1420 QT/Win32 no_profile devilqoo 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 15372 0 10-01
-1421 QT/X11 no_profile 별님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 8850 0 09-25
-1422 QT/Win32 no_profile 구름님 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10759 0 09-16
-1423 QT/Win32 no_profile tmdwn 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11226 0 09-03
-1424 QT/Win32 no_profile tmdwn 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11070 0 09-02
-1425 QT/Win32 no_profile tmdwn 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11491 2 09-02
게시물 검색

  • 게시물이 없습니다.

회원로그인

설문조사

새로운 홈페이지에 대한 평가

접속자집계

오늘
203
어제
789
최대
4,337
전체
4,992,206

Copyright © korone.net. All rights reserved.