Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => C/C++ => Konuyu başlatan: es-es - 27 Kasım 2003, 23:03:54

Başlık: C++
Gönderen: es-es - 27 Kasım 2003, 23:03:54
Arkadaşlar C++ ile ekran çözünürlüğünü nasıl değiştirebiliriz, bilgisi olan varmı?
Başlık: C++
Gönderen: Analyzer - 27 Kasım 2003, 23:52:12
Selam,

Hangi işletim sistemi için istiyorsun? Windows/Linux/Dos ? Hangi compiler'i kullanıyorsun? İşletim

sistemin nedir? İstediğin refresh rate nedir?

Analyzer.
Başlık: C++
Gönderen: es-es - 28 Kasım 2003, 00:10:36
Derleyicim Borland C++ Builder 6.0, winXP kullanıyorum,  tahminim bu işlem API lere yazılarak yapılıyor. galiba onun

için işletim sistemini soruyorsun. 800*600 cözünürlüğü 1024*768 yapmak istiyorum win.98 ve XP de çalışabilmeli.
Başlık: C++
Gönderen: ise - 28 Kasım 2003, 04:51:02
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   DEVMODE DevMode;
   int     rc,

xmode;


   if (ListBox1->ItemIndex == -1) return;


   // ---- Get Device Mode data
   EnumDisplaySettings(NULL, ListBox1->ItemIndex,

&DevMode);

   // ---- First Test resolution selected
   rc = ChangeDisplaySettings(&DevMode, CDS_TEST);
   switch (rc) {
       case

DISP_CHANGE_SUCCESSFUL:
           ChangeDisplaySettings(&DevMode, 0);
           Caption =    "The settings change was successful.";
           break;
       case

DISP_CHANGE_RESTART:
           ChangeDisplaySettings(&DevMode, 0);
           Caption = "The computer must be restarted in order for the graphics mode to work.";
 

        break;
       case DISP_CHANGE_BADFLAGS:
           Caption = "An invalid set of flags was passed in.";
           break;
       case DISP_CHANGE_FAILED:
   

       Caption = "The display driver failed the specified graphics mode.";
           break;
       case DISP_CHANGE_BADMODE:
           Caption =  "The graphics mode is not

supported.";
       case DISP_CHANGE_NOTUPDATED:
           Caption = "Windows NT only: Unable to write settings to the registry.";
           break;
       

}
}
//---------------------------------------------------------------------------

void __fastcall TForm1::FormCreate(TObject *Sender)
{
   DEVMODE DevMode;
   int     rc,

xmode;


   // ---- List display enmunerations until fault.
   rc = 1;
   xmode = 0;
   do  {
       rc = EnumDisplaySettings(NULL, xmode, &DevMode);
   

  if (rc != 0) {
           ListBox1->Items->Add (IntToStr(DevMode.dmPelsWidth)  + "X" +
                                 IntToStr(DevMode.dmPelsHeight) + "X" +
                   

             IntToStr(DevMode.dmDisplayFrequency) + "Hz " +
                                  IntToStr(DevMode.dmBitsPerPel) + "-Bit");
           }
       xmode++;
       } while (rc

!= 0);
}
//---------------------------------------------------------------------------
Başlık: C++
Gönderen: ise - 28 Kasım 2003, 04:59:22
95  98  me  2000  xp  için    Listbox ve buton koyman yeterli es es
Başlık: C++
Gönderen: Analyzer - 28 Kasım 2003, 23:12:25
Selam,

Ben şu componenti kullanıyorum, kullanımı kolay :

CPResolution v.1.0


http://www.torry.net/vcl/system/otherhardware/cpresolution.zip
Başlık: C++
Gönderen: es-es - 29 Kasım 2003, 15:40:26
Teşekkürler arkadaşlar, Thief'in verdiği notlar çok iyi çalışıyor... :P
Başlık: C++
Gönderen: ise - 01 Aralık 2003, 06:58:16
yardımcı olabildiysek ne mutlu