Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   controlar opciones del panel de control? (https://www.clubdelphi.com/foros/showthread.php?t=30433)

Carlos Arevalo 06-04-2006 02:15:28

controlar opciones del panel de control?
 
Como podría específicamente controlar en Windows XP en el Panel de Control / Opciones del Mouse y luego en la pestaña Opciones del Puntero deshabilitar la opción ocultar puntero mientras se escribe por código en Delphi 7.


Muchas Gracias

Carlos Arevalo

Bicho 06-04-2006 10:16:13

Hola, siento no poder ayudarte demasiado, pero espero que te sirva lo que te expongo.
Lo máximo que he conseguido es mostrar por código las propiedad del ratón y activar la pestaña de Opciones de Puntero,
pero no consigo ejecutar eventos sobre botones, checks, etc, no se si es posible.
Además lo que hago es un shellExecute, que visualiza el cuadro de diálogo, luego lo puedes ocultar en lugar de visualizarlo
cambiando la forma de visualización con SW_HIDE, pero alomejor te orienta de alguna manera.

Aquí te dejo el código (sacado de trucomania, y modificado por mí para conseguir activar la pestaña que pide Carlos Arevalo)

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ShellApi, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
    function Control(const Parametros: String): THandle;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  Control('shell32.dll,Control_RunDLL main.cpl,,2');
end;

function TForm1.Control(const Parametros: String): THandle;
 begin

  //ten cuidado, ya que dependiendo del SO que tengas la ruta de rundll32.exe 
//puede variar, así que haz un buscar antes, para saber su localización exacta
   Result := ShellExecute(Application.MainForm.Handle,
                          nil,
                          Pchar('c:\WINDOWS\system32\rundll32.exe'), 
                          Pchar(Parametros),
                          nil,
                          SW_SHOW);
 end;

end.

Saludos

Carlos Arevalo 07-04-2006 01:29:03

yo encontre esto que es mas o menos lo mismo que tu mandaste pero mas elaborado.

Article:
Locate, Display and Execute Control Panel Applets

http://delphi.about.com/library/libr.../aa062403a.htm


La franja horaria es GMT +2. Ahora son las 08:51:22.

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