Ver Mensaje Individual
  #9  
Antiguo 03-09-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola mordaz.

El código del mensaje #4, cambiará sin ningún problema cualquier título de ventana de una aplicación tipo SDI. Siempre claro, que la aplicación se esté ejecutando y que la ventana que deseas cambiar el título tenga su propiedad visible en verdadero.

Pero podría suceder que la aplicación de tercero que mencionas sea MDI, en ese caso el código tiene que cambiar un poco:
Código Delphi [-]
...
implementation

{$WARNINGS OFF}

procedure SetWindowTitleMDI(const MainTitle, ChildTitle, NewTitle: string);
var
  hMain, hMDI, hChild : THandle;
begin
  hMain := FindWindow(nil, PChar(MainTitle));
  if hMain <> 0 then
  begin
    hMDI := FindWindowEx(hMain, 0, 'MDIClient', 0);
    if hMDI <> 0 then
    begin
      hChild  := FindWindowEx(hMDI, 0, 0, PChar(ChildTitle));
      if hChild <> 0 then
       SetWindowText(hChild, PChar(NewTitle));
    end;
  end;
end;

Ejemplo de llamada:
Código Delphi [-]
procedure TForm1.btnChangeMDIClick(Sender: TObject);
begin
  SetWindowTitleMDI('MDIForm',      // titulo del MDIForm (main)
                    'MDIChild1',    // título del MDIChild (buscado)
                    'OTRO_TITULO'); // nuevo título
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita