Autor Beitrag
hibbert
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1007

WinServer2003, Win XP, Linux
D6 Pers, D05
BeitragVerfasst: Fr 26.07.02 13:49 
hi,
hab schon überall danach gesucht, aber nichts gefunden.
kann ir jamand sagen, wieich die aktuelle bildschirmauflösung ändern kann.
danke.
mfg hibbert
wwerner
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 185



BeitragVerfasst: Fr 26.07.02 13:58 

_________________
Gruß

Wolfgang

----------
zu hause ist es doch am schönsten
DeCodeGuru
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1333
Erhaltene Danke: 1

Arch Linux
Eclipse
BeitragVerfasst: Fr 26.07.02 13:59 
Hi hibbert,

folgenden Code habe ich im Internet gefunden:

ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
Function ChangeResolution(sizex,sizey,bpp: DWORD):Boolean;
var
  DeviceMode:TDeviceModeA;
  i:Integer;
Begin
  i:=0;
  Result:=False;
  while EnumDisplaySettings(nil,i,DeviceMode) do begin
    with DeviceMode do
      if (dmPelsWidth=sizex) and 
         (dmPelsHeight=SizeY) and 
         (dmBitsPerPel=bpp) then begin
        case ChangeDisplaySettings(DeviceMode, CDS_TEST) of 
          DISP_CHANGE_SUCCESSFUL: 
            Result:=True;
          DISP_CHANGE_RESTART:
            Showmessage('You have to restart'); 
          DISP_CHANGE_BADFLAGS:
            Showmessage('Bad display mode flags');
          DISP_CHANGE_FAILED:
            Showmessage('Failed in changing resolution');
          DISP_CHANGE_BADMODE:
            Showmessage('Display mode not supported');
          DISP_CHANGE_NOTUPDATED:
            Showmessage('Registry could not be updated');

        else Result:=true;
        end;

        if Result then 
          ChangeDisplaySettings(DeviceMode, CDS_FULLSCREEN)
      end;
    Inc(i);
  end;
End;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ChangeResolution(1024,786,16);
end;


Ich weiss allerdings nicht, ob er funktioniert. Wenn ja, sags mir bitte.

_________________
Viele Grüße
Jakob
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 26.07.02 16:43 
Sollte er eigentlich, denn er steht in der Form im EDH, und außerdem habe ich ihn (Anm. des Schreibers: den Code aus dem EDH :wink:) mal benutzt, um das C-Programm aus dem PC MAGAZIN 2/2002 nach Delphi umzusetzen.

Der Redakteur des Artikels war begeistert, dass das C-Programm (Anm. #2: nicht von mir!) 40k groß war.
Die Delphi-Version ist gut die Hälfte kleiner. 8)
Aber ich denke mal, die C-Version ließe sich auch noch optimieren.