2011-11-16 4 views
2

새 응용 프로그램을 만들고 닫기, 최대화 및 최소화 버튼 (windowFlags를 Qt::CustomizeWindowHint으로 설정)로 제목 표시 줄을 제거합니다. 나는 내 단추를 만들었 어. 이제 제거 된 버튼 아이콘을 검색해야하지만 찾을 수는 없습니다 (닫기, 최소화, 최대화).Qt C++ 테두리 아이콘

질문 : Windows 7 아이콘을 사용할 수 있습니까? 면허를 위반하지 않습니까?

답변

0

단추를 비트 맵 이미지로 배포하거나 심지어 응용 프로그램에 포함 시키면 Windows EULA를 위반할 가능성이 높습니다.

그러나 앱이 Windows에서 실행되는 경우 앱을 배포 할 필요가 없습니다. Close, Minimize 및 Maximize 버튼이 Windows 7 (아마도 시스템 폴더에있는 일부 DLL)에 저장된 위치를 찾은 다음 앱을 실행할 때이 아이콘을 직접 사용하십시오 (QIcon이로드 할 수 있다고 생각합니다). 그렇게하면 저작권 위반이 없습니다.

+0

감사합니다. 덕분에 – Outsider

4

당신은 Qt는 자체 제목 표시 줄 등을 그리는 데 사용하는 아이콘을 얻기 위해 Qt의 QStyle을 사용할 수

QStyle* style = QApplication::style(); 
QIcon icon = style->standardIcon(QStyle::SP_TitleBarCloseButton); 

사용할 수 있습니다 Qt의 표준 아이콘의 목록은 QStyle::StandartPixmap enum에서보세요.

+0

을 사용해 보겠습니다. 그러나이 아이콘은 Windows XP 스타일처럼 보입니다. Windows 7 아이콘을 얻을 수 있습니까? – Outsider

+0

QStyleFactory :: keys()를 사용하여 사용 가능한 스타일을 열거 할 수 있습니다. 불행히도 Windows 7에서 응용 프로그램을 실행하는 경우에만 Windows 7 스타일을 사용할 수 있다고 확신합니다. QStyleFactory의 – JediLlama

+0

결과 :: 키()이다 : 윈도우, 지금 WindowsXP, WindowsVista, 주제, CDE, 플라스틱과, Cleanlooks. 이 스타일 유형마다 응용 프로그램 스타일을 설정하고 스타일을 변경했지만 아이콘 (닫기 버튼)은 기본 Windows7 버튼처럼 보입니다 (색상은 아름다운 조명없이 빨간색이 아닙니다). 내 OS는 기본 테마가있는 Windows 7입니다. – Outsider