Klasa za menjanje rezolucije (Delphi/Pascal)

Klasa za menjanje rezolucije (Delphi/Pascal)

offline
  • Srđan Tot
  • Pridružio: 12 Jul 2005
  • Poruke: 2483
  • Gde živiš: Ljubljana

Pre nekog vremena sam odlučio da razvijem jednu igru bez upotrebe 3rd party biblioteka, pa mi je zatrebala jednostavna klasa za menjanje rezolucije zbog fullscreen-a... za slučaj da još nekom treba tako nešto, slobodno može da je iskoristi.

Od operativnih sistema su podržani Windows (od 98 pa na više) i Linux (koristi se xf86vmode ekstenzija). Testirani kompajleri su Delphi 2007, FPC 2.2.4 i Lazarus 0.9.28, ali verovatno radi i na drugim verzijama.

U nastavku je jednostavan konzolni program koji koristi klasu da prikaže trenutno izabranu rezoluciju, da prikaže sve rezolucije koje su moguće na računaru, da promeni rezoluciju i da je posle vrati na normalnu.
program TestBed; {$I Jedi.inc} uses   GUVideoModes; var   VideoModes: TVideoModes;   VideoMode: TVideoMode;   I: Integer; begin   VideoModes := TVideoModes.Create;   WriteLn('Desktop video mode: ', VideoModes.GetDesktopVideoMode.Width,     'x', VideoModes.GetDesktopVideoMode.Height,     'x', VideoModes.GetDesktopVideoMode.BitsPerPixel,     '@', VideoModes.GetDesktopVideoMode.Frequency);   WriteLn('Available video modes:');   for I := 0 to VideoModes.GetVideoModeCount - 1 do   begin     VideoMode := VideoModes.GetVideoMode(I);     WriteLn('  ', VideoMode.Width,       'x', VideoMode.Height,       'x', VideoMode.BitsPerPixel,       '@', VideoMode.Frequency);   end;   VideoModes.ChangeVideoMode(VideoModes.GetBestModeIndex(1024, 768, 32));   ReadLn;   VideoModes.RestoreVideoMode;   VideoModes.Free;   WriteLn('Press enter to exit...');   ReadLn; end.

Klasa: [Link mogu videti samo ulogovani korisnici]



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 1382 korisnika na forumu :: 74 registrovanih, 8 sakrivenih i 1300 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 20624 - dana 04 Apr 2026 04:18

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: aco76, Ailton, aleph_one, Asparagus, Asteker, bankulen, bobomicek, bojan_t, boromir, BOXRR, braca57, branko7, C-Gun, Cicumile, coaaco, Colt D, Cvijo_ue, dejan1972, Deki Duga Devetka, Denaya, Dogma21, DonRumataEstorski, DrNeoCortex, duro1990duro, Dzoni2412, g_g, gajasvi, galijot, Glavni Oružni, goran.vvv, havoc995, HrcAk47, ikan, ILGromovnik, Ilija Cvorovic, Istman, ivica976, Jeremiah, Kajzer Soze, Kalem, klepesina, komenski, lord sir giga, mercedesamg, Milan A. Nikolic, milikonst, Milometer, MPReN, N.e.m.a.nj.a., nekdo, neko_drugi, Nemanja Simovic, neutrino, NikMilitari, nikoladim, Nikoletina Bursac, nnnnnnnnnn, opt1, ozzy, repac, ruma, S94, saputnik plavetnila, Sevatar, skvara, Srle993, Stevan Visoki, tanakadzo, Tas011, Tula, v82, VJ, vranjanac29, 79693