eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingcoś lajtowego - konsolaRe: coś lajtowego - konsola
  • Data: 2012-10-19 11:43:58
    Temat: Re: coś lajtowego - konsola
    Od: Baranosiu <r...@w...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Dnia 19.10.2012 kenobi <p...@g...com> napisał/a:
    > W dniu piątek, 19 października 2012 10:48:01 UTC+2 użytkownik Sławomir Szczyrba
    napisał:
    >> kenobi donosi :
    >>
    >> >> > 320x200 512x384 640x480 - ale nie wszystkie
    >>
    >> > mozesz powiedziec czy udaje sie odpalic w tych rozdzialkach ?
    >>
    >> >
    >>
    >> Hm, pod WINE zamroziło mi kartę grafiki (intel) na amen.
    >>
    >> Musiałem odpiąć kompa od prądu.
    >>
    >> Boję się pytać, JAK ty te tryby graficzne ustawiasz...
    >>
    >>
    > normalnie to jest zwykle wywolanie tak ze
    > nie ja raczej odpowiadam za tego freeze
    >
    > void changeResolution(int width, int height, int bpp, int rate=0)
    > {
    > DEVMODE fullscreenSettings;
    >
    > EnumDisplaySettings(NULL, 0, &fullscreenSettings);
    >
    > fullscreenSettings.dmPelsWidth = width;
    > fullscreenSettings.dmPelsHeight = height;
    > fullscreenSettings.dmBitsPerPel = bpp;
    > fullscreenSettings.dmDisplayFrequency = rate;
    > fullscreenSettings.dmFields = DM_PELSWIDTH |
    > DM_PELSHEIGHT |
    > DM_BITSPERPEL
    > | DM_DISPLAYFREQUENCY
    > ;
    >
    > bool isChangeSuccessful = ChangeDisplaySettings(&fullscreenSettings,
    CDS_FULLSCREEN) == DISP_CHANGE_SUCCESSFUL;
    >
    >
    > }
    >
    > i wywolania
    >
    > if(Key=='1') changeResolution(320, 200, 32);
    > if(Key=='2') changeResolution(512, 384, 32);
    > if(Key=='3') changeResolution(640, 480, 32);
    > if(Key=='4') changeResolution(800, 600, 32);
    > if(Key=='5') changeResolution(1024, 768, 32);
    >
    > u mnie pod xp bardzo ladnie dziala ale ktos
    > chyba z win 7 mowil mi ze u niego nie ma reakcji na 1 i 2 dziala tylko 3 (i pewnie
    4 5)

    A to z tego co pamiętam, to działa mniej więcej tak, że jak wywołasz
    EnumDisplaySettings(NULL,0,&wskaznik); to tylko inicjujesz utworzenie
    "tablicy" wszystkich dostępnych trybów, a potem się jedzie pętlą i
    wywołuje EnumDisplaySettings tylko zamiast 0 jako drugiego argumentu
    wstawia się kolejno 1,2,3... itd. aż do momentu, kiedy ta funkcja
    zwróci FALSE (zero), oczywiście po każdym wywołaniu możesz sobie
    sprawdzić jakie dane funkcja Ci zwróciła w strukturze 'wskaznik' :D

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: