Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Cambiar ancho de la barra de desplazamiento vertical (https://www.clubdelphi.com/foros/showthread.php?t=84437)

cmfab 18-10-2013 23:45:19

Cambiar ancho de la barra de desplazamiento vertical
 
Hola a todos, necesito cambiar el ancho de la barra de desplazamiento vertical, buscnado en el foro encontré este código de las API de Windows
Código Delphi [-]
procedure TForm1.cambiascroll(ancho);
begin
    Dato.cbSize:=SizeOf(Dato);
    SystemParametersInfo(SPI_GetNonClientMetrics,0,@Dato,0);
    Dato.iScrollWidth:=ancho; {Nuevo valor / New value}
    SystemParametersInfo(SPI_SetNonClientMetrics,0,@Dato,SPIF_SENDWININICHANGE);
end;

todo me funciona bien en Windows 7, pero no sucede así en Windows 8
Alguna sugerencia de lo que hay que cambiar en el código

Mil gracias por su tiempo y atenciones

ecfisa 19-10-2013 00:24:31

Hola cmfab.

Probé con Delphi 7 y Windows 8 y funciona correctamente, este es el código de prueba:
Código Delphi [-]
procedure SetScrollBarSize(const aWidth: Integer);
var
  NCM: NONCLIENTMETRICS;
begin
  NCM.cbSize := SizeOf(NCM);
  SystemParametersInfo(SPI_GETNONCLIENTMETRICS, 0, @NCM, 0);
  NCM.iScrollWidth := aWidth;
  SystemParametersInfo(SPI_SETNONCLIENTMETRICS, 0, @NCM, SPIF_SENDWININICHANGE);
end;

Saludos :)

cmfab 19-10-2013 00:36:09

Gracias ecfisa, lo pruebo el fin de semana y te comento el lunes. un saludo y gracias nuevamente

cmfab 21-10-2013 21:01:32

Funcionó correctamente en Windows 8 con XE2, gracias una vez mas por tu colaboración


La franja horaria es GMT +2. Ahora son las 06:13:11.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi