Avatar billede nca Juniormester
08. marts 2005 - 09:45 Der er 5 kommentarer og
1 løsning

Manipulere vindue i en anden applikation

Jeg har et gammelt program lavet i Multimedia Viever, som er designet til 640x480. Vinduet, som programmet starter op i, vises altid maksimeret og på en stor skærm ser det ikke godt ud.
Jeg har ikke kildeteksten længere, så jeg kan ikke ændre i programmet. Jeg vil gerne starte programmet op fra et Delpi-program og når programmet er startet op, skal vindues resizes til 640x480 og centreres på skærmen. Herefter skal Delphi-programmet lukkes.
Kan det lade sig gøre?
Avatar billede stoney Nybegynder
08. marts 2005 - 10:54 #1
uses shellapi

her er et eks med notepad

procedure TForm1.Button1Click(Sender: TObject);

  var
    wnd: HWND;
  begin
  Shellexecute(Handle, 'OPEN', 'notepad.exe', nil, nil, SW_SHOW);
    wnd := FindWindow( 'notepad', nil);// erstat evt. NIL med formens caption
    if wnd <> 0 then
      SetForegroundWindow(wnd);begin
      movewindow( wnd, (Screen.Width div 2) - 320, (Screen.Height div 2) - 240, 640, 480, true );
end;
application.Terminate;
end;

Stoney
Avatar billede nca Juniormester
08. marts 2005 - 11:58 #2
Tak for hjælpen.
Ved du også om man kan fjerne minimer- og maximer knapperne fra et andet programs vindue, så kan luk-knappen er tilbage.
Minimer og maximer knapperne opfører sig nemlig meget mærkeligt.
Avatar billede stoney Nybegynder
08. marts 2005 - 13:44 #3
Det ved jeg faktisk ikke, sorry

Stoney
Avatar billede cms Nybegynder
08. marts 2005 - 14:50 #4
var
  WndStyle: Integer;
  Wnd: HWND;
begin
  //Wnd := ...
  WndStyle := GetWindowLong(Wnd, GWL_STYLE);
  WndStyle := WndStyle and not (WS_MAXIMIZEBOX or WS_MINIMIZEBOX);
  SetWindowLong(Wnd, GWL_STYLE, WndStyle);
end;

Prøv dette...
Avatar billede nca Juniormester
08. marts 2005 - 15:18 #5
>>cms
Det virker fint.
Jeg har oprettet et selvstændigt spørgsmål på denne adresse:
http://www.eksperten.dk/spm/598113
Læg lige et svar der og du får dine point.
Avatar billede cms Nybegynder
08. marts 2005 - 20:07 #6
Det var dejligt at høre :) Jeg har lagt et svar.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester