2014-07-23 3 views
2

지원되는 모든 해상도를 얻으 려합니다. 그것을 실행하는 경우지원되는 모든 화면 해상도 얻기

  1. , 내가 얻을 :이 코드 2 문제가

    #include "Windows.h" 
    #include <Windows.h> 
    #include <iostream> 
    
    
    using namespace std; 
    
    int main() 
    { 
        DEVMODE dm = { 0 }; 
        dm.dmSize = sizeof(dm); 
        for(int iModeNum = 0; EnumDisplaySettings(NULL, iModeNum, &dm) != 0; iModeNum++  ) 
        { 
         cout << "Mode #" << iModeNum << " = " << dm.dmPelsWidth << "x" << dm.dmPelsHeight << endl; 
        } 
    int age; 
    cin>>age; 
    

    }

    :

    몇 가지 솔루션을 여기를 검색 한 후이 코드의 작업을 얻었다 같은 해상도. 예 : Mode0, Mode1, Mode2 ..... Mode17 모두입니다. 320x200

  2. Gui를 사용할 때 사용 가능한 해상도를 볼 때 옵션으로 320x200을 사용할 수 없습니다. 내 컴퓨터가 600x800 상부를 지원하는 것을 볼 수 있지만,이 작은 EXE를 실행할 때 나는 또한 400x300, 320x240의 등

수있는 사람 도움말을 참조하시기 바랍니다 조언을? 감사합니다.

+0

이 주파수에 대해 잊지 마세요 "속도 새로 고침"의미. – chris

+0

주파수 란 무엇입니까? – user1386966

+2

'dmDisplayOrientation','dmDisplayFixedOutput','dmDisplayFlags' – MSalters

답변

3

코드가 완벽하게 작동합니다. 당신의 2 가지 문제에 관해서 :

  1. 동일한 해상도를 가진 다중 디스플레이 모드가 있습니다. 색상 차이, 빈도 또는 비월 주사와 같은 다른 방식으로 다를 수 있습니다.
  2. Windows GUI는 단순히 특정 양보다 낮은 해상도 또는 색 농도를 설정하는 것을 허용하지 않습니다. Windows '9x에서는 640x480 및 16 색이었습니다. 이제 800x600입니다. 이는 Windows UI가 특정 크기 이하로 작동하지 않기 때문입니다. 해결책이 효과가 있는지 묻는 메시지를 볼 수 없을 것입니다! 또한 GUI는 모니터의 종횡비와 일치하는 해상도 만 반환 할 수 있습니다.

편집 : "주파수"에 의해 우리가

+0

확인할 수 있습니다. 320x200 테스트를 해보니 재미가 없었습니다. 실제로, 처음에는 재미있었습니다. – chris

+0

고마워요! GUI가 지원하는 것만 얻을 수있는 방법이 있습니까? 모든 가능한 해결책을 시도 할 작은 테스트를 실행하고 싶습니다. – user1386966

+0

잘 모르겠습니다. 해상도를 다시 설정하십시오. 그 과거에는, 나는 당신이 추락 할 때 이상한 결의를 설정하는 게임을 썼다. : -/ –