|
| Proceslinjen rykker ved skift af resolutio~ Fra : Sven Storm |
Dato : 11-06-01 08:48 |
|
Hej
Mit problem er, at når jeg skifter min skærms opløsning med funktionen
ChangeResolution, så flyttes proceslinjen.
Jeg har tidligere stillet et lignende spørgsmål i gruppen og fik det gode
råd at vise proceslinjen med:
> hTaskBar := FindWindow('Shell_TrayWnd', nil);
> showwindow(hTaskBar, sw_show);
Ovennævnte virker fint - men proceslinjen rykker bort fra sin normale
placering i bunden af skærmen. Det betyder, at hvis jeg går op i opløsning
fx fra 800x600 til 1024x768 - ja så rykker proceslinjen 5 cm op på skærmen.
Hvis jeg går ned i opløsning fx fra 800x600 til 640x480 - ja så rykker
proceslinjen helt ud af skærmen. Og jeg kan ikke få den vist igen ved at
bruge: showwindow(hTaskBar,sw_show);
Nogen der har et bud på, hvordan jeg får vist proceslinjen i bunden af
skærmen - uanset om jeg går op eller ned i opløsning?
Mvh
Sven
Procedure ChangeResolution(Width: integer; Height : integer);
var
a: boolean;
i: integer;
DevM: TDEVMODE;
begin
I:=0;
with DevM do begin
repeat
a:= EnumDisplaySettings(PChar(0),i,DevM);
I:=i+1;
until (a=false);
end;
DevM.dmFields:=DM_PELSWIDTH or DM_PELSHEIGHT;
DevM.dmPelsWidth:=Width;
devM.dmPelsHeight := Height;
ChangeDisplaySettings(DevM,0);
end;
| |
Sven Storm (02-07-2001)
| Kommentar Fra : Sven Storm |
Dato : 02-07-01 10:27 |
|
Fejlen kan rettes ved at skrive:
ChangeDisplaySettings(CurMode, CDS_UPDATEREGISTRY);
i stedet for:
ChangeDisplaySettings(CurMode, 0);
i procedure ChangeResolution.
Mvh
Sven
"Sven Storm" <sven.storm@skolekom.dk> skrev i en meddelelse
news:9g1t4b$11pi$1@news.net.uni-c.dk...
> Hej
>
> Mit problem er, at når jeg skifter min skærms opløsning med funktionen
> ChangeResolution, så flyttes proceslinjen.
>
> Jeg har tidligere stillet et lignende spørgsmål i gruppen og fik det gode
> råd at vise proceslinjen med:
> > hTaskBar := FindWindow('Shell_TrayWnd', nil);
> > showwindow(hTaskBar, sw_show);
>
> Ovennævnte virker fint - men proceslinjen rykker bort fra sin normale
> placering i bunden af skærmen. Det betyder, at hvis jeg går op i opløsning
> fx fra 800x600 til 1024x768 - ja så rykker proceslinjen 5 cm op på
skærmen.
> Hvis jeg går ned i opløsning fx fra 800x600 til 640x480 - ja så rykker
> proceslinjen helt ud af skærmen. Og jeg kan ikke få den vist igen ved at
> bruge: showwindow(hTaskBar,sw_show);
>
> Nogen der har et bud på, hvordan jeg får vist proceslinjen i bunden af
> skærmen - uanset om jeg går op eller ned i opløsning?
>
> Mvh
> Sven
>
>
> Procedure ChangeResolution(Width: integer; Height : integer);
> var
> a: boolean;
> i: integer;
> DevM: TDEVMODE;
> begin
> I:=0;
> with DevM do begin
> repeat
> a:= EnumDisplaySettings(PChar(0),i,DevM);
> I:=i+1;
> until (a=false);
> end;
> DevM.dmFields:=DM_PELSWIDTH or DM_PELSHEIGHT;
> DevM.dmPelsWidth:=Width;
> devM.dmPelsHeight := Height;
> ChangeDisplaySettings(DevM,0);
> end;
| |
|
|